00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef TREASURELOADER_H
00020 #define TREASURELOADER_H
00021
00022 #include "TreasureInfo.h"
00023 #include <map>
00024 #include <vector>
00025
00026 class TreasureLoader
00027 {
00028 public:
00029 TreasureLoader();
00030 ~TreasureLoader();
00031
00033 void loadDefaults();
00034
00036 bool parse(std::string, std::vector<TreasureInfo>& treasure);
00037
00038 private:
00039 std::map<Pentagram::istring, TreasureInfo> defaultTreasure;
00040
00041 bool internalParse(std::string desc, TreasureInfo& ti,bool loadingDefault);
00042
00043 bool parseUInt32Vector(std::string val, std::vector<uint32>& vec);
00044 bool parseUIntRange(std::string val, unsigned int& min, unsigned int& max);
00045 bool parseDouble(std::string val, double& d);
00046 bool parseInt(std::string val, int& i);
00047 };
00048
00049 #endif