7 #ifndef BALL_DATATYPE_OPTIONS_H 8 #define BALL_DATATYPE_OPTIONS_H 14 #ifndef BALL_DATATYPE_STRING_H 18 #ifndef BALL_DATATYPE_STRINGHASHMAP_H 24 #ifndef BALL_MATHS_VECTOR3_H 28 #ifndef BALL_CONCEPT_PERSISTENTOBJECT_H 61 static const
Size MAX_ENTRY_LENGTH;
92 const Options& operator = (const Options& options);
108 bool isInteger(const
String& key) const;
117 bool isBool(const
String& key) const;
124 bool isReal(const
String& key) const;
134 bool isVector(const
String& key) const;
140 bool isSet(const
String& key) const;
148 void addParameterDescription(const
String& key,
String description,
ParamFile::ParameterType type, list<
String>* allowed_values = NULL);
151 const
ParamFile::ParameterDescription* getParameterDescription(const
String& key) const;
155 Options* createSubcategory(
String name);
159 Options* getSubcategory(
String name);
163 beginSubcategories();
171 void setName(const
String& name);
194 bool getBool(const
String& key) const;
204 double getReal(const
String& key) const;
228 long getInteger(const
String& key) const;
245 void setReal(const
String& key, const
double value);
265 void setInteger(const
String& key, const
long value);
274 void setBool(const
String& key, const
bool value);
293 long setDefaultInteger(const
String& key, const
long value);
303 double setDefaultReal(const
String& key, const
double value);
313 bool setDefaultBool(const
String& key, const
bool value);
333 bool readOptionFile(const
String& filename);
346 bool writeOptionFile(const
String& filename) const;
364 bool operator == (const Options& option) const;
367 bool operator != (const Options& option) const;
377 virtual
void dump (
std::ostream& s =
std::cout,
Size depth = 0) const;
390 #endif // BALL_DATATYPE_OPTIONS_H
#define BALL_CREATE(name)