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, ParameterType type, list<
String>* allowed_values = NULL);
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)