configuration
[utils]

Configuration File object. More...

Typedefs

typedef struct __tag_config GF_Config

Functions

GF_Config * gf_cfg_init (const char *file, Bool *new_cfg)
 configuration file initialization
GF_Config * gf_cfg_new (const char *filePath, const char *fileName)
 configuration file constructor
GF_Config * gf_cfg_force_new (const char *filePath, const char *fileName)
 alternative configuration file constructor
void gf_cfg_del (GF_Config *cfgFile)
 configuration file destructor
void gf_cfg_remove (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
const char * gf_cfg_get_sub_key (GF_Config *iniFile, const char *secName, const char *keyName, u32 sub_index)
char * gf_cfg_get_filename (GF_Config *iniFile)

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_init ( const char *  file,
Bool *  new_cfg 
)

Constructs a configuration file from fileName. if fileName is NULL, the default GPAC configuration file is loaded. If no configuration file is found, a default configuration file is created with the proper module directory, font directory and other default options.

Parameters:
fileName name of the configuration file, or NULL for default file
new_cfg Boolean set to true if a new configuration file has been created
Returns:
the configuration file object, NULL if the file could not be created
GF_Config* gf_cfg_new ( const char *  filePath,
const char *  fileName 
)

Constructs a configuration file.

Parameters:
filePath directory the file is located in
fileName name of the configuration file
Returns:
the configuration file object, NULL if the file does not exist
GF_Config* gf_cfg_force_new ( const char *  filePath,
const char *  fileName 
)

Constructs a configuration file. If file does not exist, configuration will be still created

Parameters:
filePath directory the file is located in
fileName name of the configuration file
Returns:
the configuration file object, never NULL, even if file does not exist
void gf_cfg_del ( GF_Config *  cfgFile  ) 

Destroys the configuration file and saves it if needed.

Parameters:
cfgFile the target configuration file
void gf_cfg_remove ( GF_Config *  cfgFile  ) 

Destroys the configuration file and removes the file from disk.

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

Saves the configuration file if modified.

Parameters:
cfgFile the 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:
cfgFile the target configuration file
secName the desired key parent section name
keyName the 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:
cfgFile the target configuration file
secName the desired key parent section name
keyName the desired key name
keyValue the 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:
cfgFile the 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:
cfgFile the target configuration file
secIndex 0-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:
cfgFile the target configuration file
secName the 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:
cfgFile the target configuration file
secName the target section
keyIndex 0-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:
cfgFile the target configuration file
secName the target section
keyName the name of the target key
keyValue the value for the new key
index the 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:
cfgFile the target configuration file
secName the target section
const char* gf_cfg_get_sub_key ( GF_Config *  iniFile,
const char *  secName,
const char *  keyName,
u32  sub_index 
)

get a sub key (separator is ':') in a given key in a given section. Returns an error if the key does not exist

Parameters:
cfgFile the target configuration file
secName the target section
keyName the name of the target key
sub_index the 0-based index position of the sub key
char* gf_cfg_get_filename ( GF_Config *  iniFile  ) 

Get the full filename associated with this config file The caller is responsible for freeing memory

Parameters:
iniFile The Configuration
Returns:
a newly allocated filename

Generated on 25 Jul 2012 for libgpac by  doxygen 1.6.1