libgpac 0.4.5
Typedefs | Functions

configuration

utils

Configuration File object. More...

Typedefs

typedef struct __tag_config GF_Config

Functions

GF_Config * gf_cfg_new (const char *filePath, const char *fileName)
 configuration file constructor
void gf_cfg_del (GF_Config *cfgFile)
 configuration file destructor
GF_Err gf_cfg_save (GF_Config *iniFile)
 configuration saving
const char * gf_cfg_get_key (GF_Config *cfgFile, const char *secName, const char *keyName)
 key value query
GF_Err gf_cfg_set_key (GF_Config *cfgFile, const char *secName, const char *keyName, const char *keyValue)
 key value update
u32 gf_cfg_get_section_count (GF_Config *cfgFile)
 section count query
const char * gf_cfg_get_section_name (GF_Config *cfgFile, u32 secIndex)
 section name query
u32 gf_cfg_get_key_count (GF_Config *cfgFile, const char *secName)
 key count query
const char * gf_cfg_get_key_name (GF_Config *cfgFile, const char *secName, u32 keyIndex)
 key count query
GF_Err gf_cfg_insert_key (GF_Config *cfgFile, const char *secName, const char *keyName, const char *keyValue, u32 index)
 key insertion
void gf_cfg_del_section (GF_Config *cfgFile, const char *secName)
 section destrouction

Detailed Description

This section documents the configuration file object of the GPAC framework. This file is formatted as the INI file mode of WIN32 in sections and keys.

Note:
For more information on the GPAC configuration file itself, please refer to the GPAC configuration help provided with GPAC.

Function Documentation

GF_Config* gf_cfg_new ( const char *  filePath,
const char *  fileName 
)

Constructs a configuration file

Parameters:
filePathdirectory the file is located in
fileNamename of the configuration file
Returns:
the configuration file object
void gf_cfg_del ( GF_Config *  cfgFile)

Destroys the configuration file and saves it if needed.

Parameters:
cfgFilethe target configuration file
GF_Err gf_cfg_save ( GF_Config *  iniFile)

Saves the configuration file if modified.

Parameters:
cfgFilethe target configuration file
const char* gf_cfg_get_key ( GF_Config *  cfgFile,
const char *  secName,
const char *  keyName 
)

Gets a key value from its section and name.

Parameters:
cfgFilethe target configuration file
secNamethe desired key parent section name
keyNamethe desired key name
Returns:
the desired key value if found, NULL otherwise.
GF_Err gf_cfg_set_key ( GF_Config *  cfgFile,
const char *  secName,
const char *  keyName,
const char *  keyValue 
)

Sets a key value from its section and name.

Parameters:
cfgFilethe target configuration file
secNamethe desired key parent section name
keyNamethe desired key name
keyValuethe desired key value
Note:
this will also create both section and key if they are not found in the configuration file
u32 gf_cfg_get_section_count ( GF_Config *  cfgFile)

Gets the number of sections in the configuration file

Parameters:
cfgFilethe target configuration file
Returns:
the number of sections
const char* gf_cfg_get_section_name ( GF_Config *  cfgFile,
u32  secIndex 
)

Gets a section name based on its index

Parameters:
cfgFilethe target configuration file
secIndex0-based index of the section to query
Returns:
the section name if found, NULL otherwise
u32 gf_cfg_get_key_count ( GF_Config *  cfgFile,
const char *  secName 
)

Gets the number of keys in a section of the configuration file

Parameters:
cfgFilethe target configuration file
secNamethe target section
Returns:
the number of keys in the section
const char* gf_cfg_get_key_name ( GF_Config *  cfgFile,
const char *  secName,
u32  keyIndex 
)

Gets the number of keys in a section of the configuration file

Parameters:
cfgFilethe target configuration file
secNamethe target section
keyIndex0-based index of the key in the section
Returns:
the key name if found, NULL otherwise
GF_Err gf_cfg_insert_key ( GF_Config *  cfgFile,
const char *  secName,
const char *  keyName,
const char *  keyValue,
u32  index 
)

Inserts a new key in a given section. Returns an error if a key with the given name already exists in the section

Parameters:
cfgFilethe target configuration file
secNamethe target section
keyNamethe name of the target key
keyValuethe value for the new key
indexthe 0-based index position of the new key
void gf_cfg_del_section ( GF_Config *  cfgFile,
const char *  secName 
)

Removes all entries in the given section

Parameters:
cfgFilethe target configuration file
secNamethe target section