aboutsummaryrefslogtreecommitdiff
path: root/Src/Wasabi/bfc/util/inifile.h
blob: 6ce7b151af3a347bc96b65b3d56dcbda2e044565 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#ifndef _INIFILE_H
#define _INIFILE_H

#include <bfc/string/StringW.h>

class IniFile 
{
public:
  IniFile(const wchar_t *_filename);

  void setString(const wchar_t *section, const wchar_t *tagname, const wchar_t *val);
  wchar_t *getString(const wchar_t *section, const wchar_t *tagname, wchar_t *buf, int buflen, const wchar_t *default_val = L""); // returns buf
  StringW getString(const wchar_t *section, const wchar_t *tagname, const wchar_t *default_val=L"");

  void setInt(const wchar_t *section, const wchar_t *tagname, int val);
  int getInt(const wchar_t *section, const wchar_t *tagname, int default_val = 0);

  int getBool(const wchar_t *section, const wchar_t *tagname, int default_val = 0);
  void setBool(const wchar_t *section, const wchar_t *tagname, int val);

  GUID getGuid(const wchar_t *section, const wchar_t *tagname, GUID default_val = INVALID_GUID);
  void setGuid(const wchar_t *section, const wchar_t *tagname, const GUID &val);

private:
  StringW filename;
};

#endif