24 #include <boost/noncopyable.hpp>
40 virtual bool configure(
DtReaderWriter&,
bool ignoreUnspecified=
true)
const = 0;
49 :
D(name, parentRegistry)
52 this->myValueSpecified =
true;
56 :
D(def, name, parent)
59 this->myValueSpecified =
true;
64 :
D(name, def, parent)
67 this->myValueSpecified =
true;
70 virtual bool valuePresent()
const
72 return this->valueSpecified();
77 if (ignoreUnspecified && !valuePresent())
80 if (
D* rwD = dynamic_cast<D*>(&rw))
93 this->setValueSpecified(
true);
120 for (T* info=iter.
first(); info; info=iter.
next())
122 std::auto_ptr<T> t(
new T());
123 info->configure(*t, ignoreUnspecified);
124 rwlist->
add(t.release());
158 virtual bool loadFromFile(
const std::string& file, std::ostream& log);
159 virtual bool loadFromFile(
const std::string& file);
165 virtual bool loadFromSourceSpecificFile(
166 const std::string& file,
167 const std::string& ext =
"mtl");
185 virtual void configure(
187 const std::string& matchText,
188 bool ignoreUnspecified=
true)
const;
194 virtual void configurePaths(std::string& path)
const;
197 virtual void print(std::ostream&,
bool printUnspecified=
true)
const;
383 static void setUserDataDefault(
const std::string&);
389 static void setDataDefault(
const std::string&);
396 static void setAppDataDefault(
const std::string&);
406 static void setModelDefinitionDefault(
const std::string&);
408 std::string modelDefinitionPath()
const;
410 std::string simCachePath()
const;
412 std::string featureConfigFile()
const;