diff options
author | Alexander Baldeck <alexander@archlinux.org> | 2004-12-26 04:22:39 +0000 |
---|---|---|
committer | Alexander Baldeck <alexander@archlinux.org> | 2004-12-26 04:22:39 +0000 |
commit | af5bb3aada8cb4061ed81f60ef24a60b7a2e02b7 (patch) | |
tree | e85c7a68698a786ac30a249c26f1ca60258bc815 /src/configuration.h | |
parent | 70edbd9eb40f7f36b1bd5a55909d21ca54d10f41 (diff) | |
download | mana-af5bb3aada8cb4061ed81f60ef24a60b7a2e02b7.tar.gz mana-af5bb3aada8cb4061ed81f60ef24a60b7a2e02b7.tar.bz2 mana-af5bb3aada8cb4061ed81f60ef24a60b7a2e02b7.tar.xz mana-af5bb3aada8cb4061ed81f60ef24a60b7a2e02b7.zip |
added new config file handling (code integration has yet to be done)
please test overloaded geValue() using GCCs other than 3.4.3 (seems not to work properly)
Diffstat (limited to 'src/configuration.h')
-rw-r--r-- | src/configuration.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/src/configuration.h b/src/configuration.h new file mode 100644 index 00000000..98c17be9 --- /dev/null +++ b/src/configuration.h @@ -0,0 +1,55 @@ +/* + * The Mana World + * Copyright 2004 The Mana World Development Team + * + * This file is part of The Mana World. + * + * The Mana World is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * any later version. + * + * The Mana World is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with The Mana World; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef __INIREAD_H +#define __INIREAD_H + +#define INI_DELIMITER "=" +#define INI_COMMENTER "#" + +#include <list> +#include <string> +#include <iostream> +#include <fstream> + +class Configuration { + public: + void Init(std::string); + + bool Write(); + + bool setValue(std::string, std::string); + std::string getValue(std::string, std::string); + float getValue(std::string, float); + private: + std::ifstream inFile; + + typedef struct INI_OPTION { + std::string key; + std::string stringValue; + float numericValue; + }; + + std::list<INI_OPTION> iniOptions; + std::list<INI_OPTION>::iterator iter; +}; + +#endif |