95 template <
typename ValueType>
96 boost::optional<ValueType> findItemValue(
const DtString& key)
const;
99 template <
typename ValueType>
100 boost::optional<ValueType> findItemValue(
int key)
const;
103 template <
typename ValueType>
104 boost::optional<ValueType> findItemValue(
double key)
const;
147 virtual bool erase(
int key);
148 virtual bool erase(
double key);
192 virtual void setKeyType(
const DtString&);
198 virtual bool keyIsInt()
const;
199 virtual bool keyIsReal()
const;
200 virtual bool keyIsString()
const;
214 virtual bool convertKeyToString(
int key,
DtString& str)
const;
217 virtual bool convertKeyToString(
double key,
DtString& str)
const;
220 virtual bool convertStringToKey(
const DtString& str,
int& key)
const;
223 virtual bool convertStringToKey(
const DtString& str,
double& key)
const;
269 template <
typename ValueType>
274 return findPropertyValue<ValueType>(key);
277 return boost::optional<ValueType>();
280 template <
typename ValueType>
286 return findPropertyValue<ValueType>(keyStr);
289 return boost::optional<ValueType>();
292 template <
typename ValueType>
298 return findPropertyValue<ValueType>(keyStr);
301 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:266
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:183
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:270
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:264
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 item at the specified iterator position.
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.