13 #include <vlutil/vlString.h>
18 #include <vlutil/vlMachineTypes.h>
20 #include <mtl/environment.h>
21 #include <vlutil/vlFilename.h>
24 #include <vlutil/vlSmartPointers.h>
25 #include <vlutil/vlTime.h>
89 typedef std::vector<DtSymbolString>::iterator
aliasIter;
100 parentRegistry = NULL,
bool readonly =
false);
102 parentRegistry = NULL,
bool readonly =
false);
132 virtual void putSelf(FILE* fp,
int indentLevel = 0,
133 bool writeUnspecified =
false,
const DtFilename& path =
134 DtFilename::nullFilename());
137 virtual void postPutSelf();
140 virtual void prePutSelf();
147 virtual void getSelf(DtlObjPtr args,
152 virtual void postGetSelf();
155 virtual void preGetSelf();
159 virtual void writeSelf(FILE* fp,
int indentLevel = 0,
160 bool writeUnspecified =
false,
161 const DtFilename& path = DtFilename::nullFilename());
165 virtual void putData(FILE *fp,
int indentLevel = 0);
166 virtual DtlObjPtr getData(DtlObjPtr args,
const SearchPaths& searchPaths,
173 static void putIndent(FILE* fp,
int indentLevel);
195 virtual void setValueSpecified(
bool specified,
bool recurse =
false);
196 virtual bool valueSpecified()
const;
201 virtual void addAlias(
const DtString& alias);
207 virtual const aliasContainer& aliases()
const;
210 virtual void setReadonly(
bool flag);
213 virtual bool isReadonly()
const;
217 virtual void reset();
222 virtual bool isVariableReference()
const;
225 virtual void setIsVariableReference(
bool value);
229 virtual void clearAllVariableReferenceFlags();
236 virtual int alignment()
const;
261 virtual bool checkAndSetDefaultRWValue(DtlObjPtr args,
280 virtual bool toXml(
const DtFilename&)
const;
283 virtual bool fromXml(
const DtString&);
286 virtual bool fromXmlFile(
const DtFilename&);
298 virtual void putVariableReference(
DtEnvironmentSP, DtEnvValueSP value)
const;
301 const SearchPaths& searchPaths = SearchPaths(),
306 const SearchPaths& searchPaths = SearchPaths(),
310 virtual void unrecognizedItem(
const DtEnvironmentSP env,
const DtEnvValueSP root,
314 virtual void getVariableReference(
DtEnvironmentSP, DtEnvValueSP value);
322 virtual bool variableIsBound()
const;
326 virtual void unbindVariable();
346 virtual void setName(
const DtString&);
351 virtual const char* readerWriterType()
const;
354 static const char* theXmlType();
356 virtual const char* xmlType()
const
363 virtual DtString prettyPrint()
const;
365 std::string debugText()
const;
382 virtual std::list<DtVariableNameType> unboundVariables()
const;
388 static const DtFilename& appPath();
390 bool invalid()
const;
398 static void setFactoryCreatorFunction(DtReaderWriterFactoryCreatorFcn fcn);
400 static void createReaderWriterFactory();
401 static void cleanupFactory();
410 virtual bool hasVariableReference()
const;