struct ParameterEntry
{
ParameterEntry()
{
}
ParameterEntry(const String &_Name, const String &_Value)
{
Name = _Name;
Value = _Value;
if(Name.Last() == ' ')
{
Name.PopEnd();
}
}
String Name;
String Value;
};
class ParameterFile
{
public:
ParameterFile(const String &Filename);
String GetRequiredString(const String &ParameterName);
String GetOptionalString(const String &ParameterName);
int GetInteger(const String &ParameterName);
bool GetBoolean(const String &ParameterName);
UINT GetUnsignedInteger(const String &ParameterName);
double GetDouble(const String &ParameterName);
float GetFloat(const String &ParameterName);
Vec3f GetVec3(const String &ParameterName);
String GetString(const String &ParameterName, const String &Default);
int GetInteger(const String &ParameterName, int Default);
bool GetBoolean(const String &ParameterName, bool Default);
UINT GetUnsignedInteger(const String &ParameterName, UINT Default);
double GetDouble(const String &ParameterName, double Default);
float GetFloat(const String &ParameterName, float Default);
Vec3f GetVec3(const String &ParameterName, const Vec3f &Default);
private:
void AddFile(const String &Filename);
Vector<ParameterEntry> Parameters;
};