96 template <
typename ValueType>
97 boost::optional<ValueType> findItemValue(
const DtString& key)
const;
100 template <
typename ValueType>
101 boost::optional<ValueType> findItemValue(
int key)
const;
104 template <
typename ValueType>
105 boost::optional<ValueType> findItemValue(
double key)
const;
151 virtual bool erase(
int key);
152 virtual bool erase(
double key);
196 virtual void setKeyType(
const DtString&);
202 virtual bool keyIsInt()
const;
203 virtual bool keyIsReal()
const;
204 virtual bool keyIsString()
const;
218 virtual bool convertKeyToString(
int key,
DtString& str)
const;
221 virtual bool convertKeyToString(
double key,
DtString& str)
const;
224 virtual bool convertStringToKey(
const DtString& str,
int& key)
const;
227 virtual bool convertStringToKey(
const DtString& str,
double& key)
const;
273 template <
typename ValueType>
278 return findPropertyValue<ValueType>(key);
281 return boost::optional<ValueType>();
284 template <
typename ValueType>
290 return findPropertyValue<ValueType>(keyStr);
293 return boost::optional<ValueType>();
296 template <
typename ValueType>
302 return findPropertyValue<ValueType>(keyStr);
305 return boost::optional<ValueType>();
#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
virtual DtlObjPtr variablesStart(DtlObjPtr args) const
virtual void createListEntry(DtPropertyInterface *iFace, DtlObjPtr variableItem, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
virtual void putData(DtEnvironmentSP, DtEnvValueSP value) const
Override to add attributes of actual data.
DtPropertyInterface * myScratchItem
Definition: rwPropertiesMap.h:270
DT_DLL_readerWriter DtBoost::shared_ptr< DtEnvironment > DtEnvironmentSP
Definition: readerWriter.h:30
virtual bool convertKeyToString(int key, DtString &str) const
Convert the given int key to a DtString. If not possible, returns false.
voidpf void uLong size
Definition: ioapi.h:39
virtual void preWriteItem(std::string &fp, DtReaderWriter *rw, int indentLevel)
Definition: readerWriter.h:85
virtual void postWriteItem(std::string &fp, DtReaderWriter *rw, int indentLevel)
Definition: readerWriterRegistry.h:39
virtual DtlObjPtr getData(DtlObjPtr variableList, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
Override to allow a variable to be assigned to a property of derived type.
voidpf void * buf
Definition: ioapi.h:39
virtual const char * xmlType() const
Definition: rwPropertiesMap.h:187
Interface class used to define minimal interface for a property. The DtPropertyInterface class provid...
Definition: propertyInterface.h:48
virtual bool keyIsString() const
Returns the type of key.
virtual bool isSimilarProperty(const DtPropertyInterface *rhs, bool strict=true) const
Returns true prototype is the same.
boost::optional< ValueType > findItemValue(const DtString &key) const
Finds the value of the item with the specified key. Will fail if the type of the key does not match t...
Definition: rwPropertiesMap.h:274
virtual char * encode(char *) const
Encodes the property into the supplied buffer. Does not align the property. Buffer must already be al...
virtual DtPropertyInterface * createPrototype(DtlObjPtr)
DtPropertyInterface * myKeyType
Definition: rwPropertiesMap.h:268
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
virtual const char * decode(const char *)
Decodes the property from the specified buffer. Assumes buffer is the start of the property and prece...
int getSize() const
Returns the network size of this item in bytes. This does not include any upfront padding for alignme...
Acts as a map for properties. A map is a definition that has a key and a prototype, with values being the key and prototype pair. The key can only be a string (DtRwStringType), int (DtRwIntType, DtRwInt8Type, DtRwInt16Type, DtRwInt32Type), or real (DtRwRealType, DtRwReal32Type, DtRwReal64Type).
Definition: rwPropertiesMap.h:41
virtual int requiredPadding(const char *buf, const DtPropertyInterface *field) const
The number of padding bytes required before writing the given field to the buffer for HLA encoding...
bool operator==(const DtRwPropertiesList &) const
DtRwPropertiesList & operator=(const DtRwPropertiesList &)
virtual void erase(DtPropertyInterface *item)
Erases the specified item.
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...
Acts as a DtRwList for properties. Only real difference between this class and a DtRwProperties class...
Definition: rwPropertiesList.h:38
virtual int hlaAlignment() const
The required byte alignment of this property when encoding to HLA.
virtual DtPropertyInterface * addItem()
Adds a new item to the end of the list of the same type as myPrototype. Returns this item so that it ...
static const char * theXmlType()
The type that is used when archiving to an XML stream.