Spaces:
Paused
Paused
| from configparser import ConfigParser | |
| from typing import Optional, List | |
| from facefusion.filesystem import resolve_relative_path | |
| CONFIG = None | |
| def get_config() -> ConfigParser: | |
| global CONFIG | |
| if CONFIG is None: | |
| config_path = resolve_relative_path('../facefusion.ini') | |
| CONFIG = ConfigParser() | |
| CONFIG.read(config_path) | |
| return CONFIG | |
| def clear_config() -> None: | |
| global CONFIG | |
| CONFIG = None | |
| def get_str_value(key : str, fallback : Optional[str] = None) -> Optional[str]: | |
| section, option = key.split('.') | |
| value = get_config()[section].get(option) | |
| if value or fallback: | |
| return str(value or fallback) | |
| return None | |
| def get_int_value(key : str, fallback : Optional[str] = None) -> Optional[int]: | |
| section, option = key.split('.') | |
| value = get_config()[section].get(option) | |
| if value or fallback: | |
| return int(value or fallback) | |
| return None | |
| def get_float_value(key : str, fallback : Optional[str] = None) -> Optional[float]: | |
| section, option = key.split('.') | |
| value = get_config()[section].get(option) | |
| if value or fallback: | |
| return float(value or fallback) | |
| return None | |
| def get_bool_value(key : str, fallback : Optional[str] = None) -> Optional[bool]: | |
| section, option = key.split('.') | |
| value = get_config()[section].get(option, fallback) | |
| if value == 'True' or fallback == 'True': | |
| return True | |
| if value == 'False' or fallback == 'False': | |
| return False | |
| return None | |
| def get_str_list(key : str, fallback : Optional[str] = None) -> Optional[List[str]]: | |
| section, option = key.split('.') | |
| value = get_config()[section].get(option) | |
| if value or fallback: | |
| return [ str(value) for value in (value or fallback).split(' ') ] | |
| return None | |
| def get_int_list(key : str, fallback : Optional[str] = None) -> Optional[List[int]]: | |
| section, option = key.split('.') | |
| value = get_config()[section].get(option) | |
| if value or fallback: | |
| return [ int(value) for value in (value or fallback).split(' ') ] | |
| return None | |
| def get_float_list(key : str, fallback : Optional[str] = None) -> Optional[List[float]]: | |
| section, option = key.split('.') | |
| value = get_config()[section].get(option) | |
| if value or fallback: | |
| return [ float(value) for value in (value or fallback).split(' ') ] | |
| return None | |