16 #include <vlutil/vlTime.h>
19 #include <boost/optional.hpp>
56 MinimalSimilarityCheck = 0x00000002,
60 AddMissing = 0x00000008,
61 KeepIsPublished = 0x00000010
80 template <
typename ValueType>
81 boost::optional<ValueType> propertyValue()
const;
89 template <
typename ValueType>
147 template <
typename SpecificPropType>
149 template <
typename SpecificPropType>
176 template <
typename ValueType>
195 template <
typename ValueType>
222 template <
typename SpecificPropType>
223 SpecificPropType* addNewProperty(
const DtString& propertyName);
246 virtual char*
encode(
char*)
const = 0;
249 virtual const char*
decode(
const char*) = 0;
255 virtual int hlaAlignment()
const = 0;
259 virtual const char* propertyType()
const = 0;
265 virtual void setPropertyName(
const DtString& propertyName) = 0;
304 virtual bool isPublishedArg(DtlObjPtr arg,
unsigned& disVarRecType)
const;
308 virtual bool isPublished()
const = 0;
309 virtual void setIsPublished(
bool isPub) = 0;
315 virtual unsigned disRecordType()
const = 0;
316 virtual void setDisRecordType(
unsigned recType) = 0;
320 virtual void reset() = 0;
323 #define propertyInterface_INL_
324 #include "propertyInterface.inl"
325 #undef propertyInterface_INL_
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
Definition: symbolString.h:20
const int DtPropertyVersion
Definition: propertyInterface.h:22
voidpf void uLong size
Definition: ioapi.h:39
Definition: readerWriter.h:85
boost::optional< T > findPropertyValue(const DtReaderWriter &properties, const DtString &propertyName)
Finds the ReaderWriter object in the given set of properties with the specified name and returns its ...
virtual bool removeProperty(const DtString &propertyName)
Definition: propertyInterface.h:232
Interface class used to define minimal interface for a property.
Definition: propertyInterface.h:48
const SpecificRwType * findProperty(const DtReaderWriter &properties, const DtString &propertyName)
Finds the ReaderWriter object in the given set of properties with the specified name.
virtual bool addProperty(DtPropertyInterface *property)
Definition: propertyInterface.h:211
virtual DtPropertyInterface * findPropertyInterface(const DtString &propertyName)
Definition: propertyInterface.h:120
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
virtual bool removeProperty(const DtPropertyInterface *property)
Definition: propertyInterface.h:237
std::vector< DtMergePathStruct > DtMergePath
Definition: readerWriterFactory.h:167
DT_DLL_readerWriter char * encode(const DtFilename &val, char *buffer)
Serializes the provided value val into buffer.
virtual const DtPropertyInterface * findPropertyInterface(const DtString &propertyName) const
Definition: propertyInterface.h:115
void setPropertyValue(DtReaderWriter *prop, T val)
Sets the value of the given ReaderWriter property.
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...
bool findAndSetPropertyValue(DtReaderWriter &properties, const DtString &propertyName, T val)
Finds the ReaderWriter object in the given set of properties with the specified name and sets its val...
MergeFlags
Determines how two lists of properties will be merged by the merge function.
Definition: propertyInterface.h:53