16 #include <vlutil/vlSmartPointers.h>
43 virtual void getSelf(DtlObjPtr args,
const std::vector<DtFilename>& searchPaths = std::vector<DtFilename>(),
47 virtual void writeSelf(std::string& fp,
int indentLevel = 0,
48 bool writeUnspecified =
false,
49 const DtFilename& path = DtFilename::nullFilename());
58 const DtString& variableName,
const std::map<DtString, DtString>& variableSubstitutions = std::map<DtString, DtString>())
const;
60 const DtString& variableName,
const std::map<DtString, DtString>& variableSubstitutions = std::map<DtString, DtString>());
66 const std::map<DtString, DtString>& variableSubstitutions = std::map<DtString, DtString>())
const;
68 const std::map<DtString, DtString>& variableSubstitutions = std::map<DtString, DtString>());
71 template <
typename RW_Type>
77 return dynamic_cast<const RW_Type*
>(rw);
85 static DtRwVariableBindings* createBinding(
const std::list<DtReaderWriter::DtVariableNameType> &);
102 virtual void clearVariables();
113 virtual char*
encode(
char*)
const;
116 virtual const char*
decode(
const char*);
124 virtual void setVariableSubstitutions(
const std::map<DtString, DtString>&);
125 virtual const std::map<DtString, DtString>& variableSubstitutions()
const;
134 const DtString& variableName,
const std::map<DtString, DtString>& variableSubstitutions = std::map<DtString, DtString>())
const;
143 const std::map<DtString, DtString>& variableSubstitutions)
const;
157 const std::list<const DtRwVariableBindings*>&);
bool operator==(const DtReaderWriter &) const
Equivalence operator.
virtual const char * readerWriterType() const
Used to supply a string type that this reader writer type is. This can be used in place of dynamic-ca...
DT_DLL_readerWriter int getSize(const DtString &val)
The number of bytes required to encode the value.
#define DT_DLL_readerWriter
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: readerWriterDefines.h:34
std::map< DtString, DtString > myVariableSubstitutions
Definition: rwVariableBindings.h:146
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
std::shared_ptr< DtRwVariableBindings > DtVariableBindingsSharedPtr
Definition: rwVariableBindings.h:149
Definition: readerWriter.h:85
Definition: readerWriterRegistry.h:39
virtual DtString prettyPrint() const
Routine to return a human readable form of the reader/writer variable. Not all reader/writer classes ...
virtual void writeSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Called from putSelf, calls myRegistry.putSelf which in turn calls putSelf on each reader/writer in th...
ReaderWriter object that maintains a list of reader-writer variable bindings. It keeps a list of name...
Definition: rwVariableBindings.h:27
const RW_Type * findAndCastVariableBinding(const DtString &variableName) const
Definition: rwVariableBindings.h:72
bool operator!=(const DtReaderWriter &rhs) const
Definition: readerWriter.h:121
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
DT_DLL_readerWriter char * encode(const DtFilename &val, char *buffer)
Serializes the provided value val into buffer. buffer must have at least the number of bytes returned...
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
Top level to read itself from an input stream. searchPath is passed down to all DtReaderWriter member...
DT_DLL_readerWriter bool substituteVariablesInString(DtString &string, const std::list< const DtRwVariableBindings * > &)
Replaces any variables in the specified string with their values specified in the variable bindings l...
static const DtVariableBindingsList & nullVariableReference()
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
DT_DLL_readerWriter const char * decode(DtString &val, const char *buffer)
Decodes a value from buffer and places the result in val of the type specified by val...