cfg.h
上传用户:gzpyjq
上传日期:2013-01-31
资源大小:1852k
文件大小:1k
源码类别:

手机WAP编程

开发平台:

WINDOWS

  1. /*
  2.  * cfg.h - configuration file handling
  3.  *
  4.  * All returned octet strings are copies which the caller should destroy.
  5.  *
  6.  * Lars Wirzenius
  7.  */
  8. #ifndef CFG_H
  9. #define CFG_H
  10. typedef struct Cfg Cfg;
  11. typedef struct CfgLoc CfgLoc; 
  12. typedef struct CfgGroup CfgGroup;
  13. Cfg *cfg_create(Octstr *filename);
  14. void cfg_destroy(Cfg *cfg);
  15. int cfg_read(Cfg *cfg);
  16. CfgGroup *cfg_get_single_group(Cfg *cfg, Octstr *name);
  17. List *cfg_get_multi_group(Cfg *cfg, Octstr *name);
  18. Octstr *cfg_get_group_name(CfgGroup *grp);
  19. Octstr *cfg_get_configfile(CfgGroup *grp);
  20. Octstr *cfg_get_real(CfgGroup *grp, Octstr *varname, const char *file,
  21.                long line, const char *func);
  22. #define cfg_get(grp, varname) 
  23.     cfg_get_real(grp, varname, __FILE__, __LINE__, __func__)
  24. int cfg_get_integer(long *n, CfgGroup *grp, Octstr *varname);
  25. /* Return -1 and set n to 0 if no varname found
  26.  * otherwise return 0 and set n to 0 if value is no, false, off or 0,
  27.  * and 1 if it is true, yes, on or 1. Set n to 1 for other values, too
  28.  */
  29. int cfg_get_bool(int *n, CfgGroup *grp, Octstr *varname);
  30. List *cfg_get_list(CfgGroup *grp, Octstr *varname);
  31. void cfg_set(CfgGroup *grp, Octstr *varname, Octstr *value);
  32. void grp_dump(CfgGroup *grp);
  33. void cfg_dump(Cfg *cfg);
  34. #endif