16 #include <vlutil/vlTime.h>
19 #include <boost/optional.hpp>
61 MinimalSimilarityCheck = 0x00000002,
65 AddMissing = 0x00000008,
66 KeepPublishedSettings = 0x00000010
88 template <
typename ValueType>
89 boost::optional<ValueType> propertyValue()
const;
97 template <
typename ValueType>
157 template <
typename SpecificPropType>
159 template <
typename SpecificPropType>
187 template <
typename ValueType>
206 template <
typename ValueType>
234 template <
typename SpecificPropType>
235 SpecificPropType* addNewProperty(
const DtString& propertyName);
265 virtual char*
encode(
char*)
const = 0;
269 virtual const char*
decode(
const char*) = 0;
280 virtual int hlaAlignment()
const = 0;
284 virtual const char* propertyType()
const = 0;
290 virtual void setPropertyName(
const DtString& propertyName) = 0;
329 virtual bool isPublishedArg(DtlObjPtr arg,
unsigned& disVarRecType);
336 virtual void setKeepPublishingSettings(
bool keep) = 0;
337 virtual bool keepPublishingSettings()
const = 0;
341 virtual bool isUpdateNeeded(
DtTime t)
const = 0;
344 virtual bool hasReceivedUpdateSince(
DtTime t)
const = 0;
349 virtual DtTime updateClockTime()
const = 0;
353 virtual bool isPublished()
const = 0;
354 virtual void setIsPublished(
bool isPub) = 0;
360 virtual unsigned disRecordType()
const = 0;
361 virtual void setDisRecordType(
unsigned recType) = 0;
365 virtual void reset() = 0;
369 virtual bool isDebugEnabled()
const = 0;
370 virtual void setDebugEnabled(
bool en) = 0;
374 virtual void processPublicationArgs(DtlObjPtr arg);
375 virtual void processPublicationArg(DtlObjPtr arg);
378 #define propertyInterface_INL_
379 #include "propertyInterface.inl"
380 #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
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
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:245
Interface class used to define minimal interface for a property. The DtPropertyInterface class provid...
Definition: propertyInterface.h:53
const SpecificRwType * findProperty(const DtReaderWriter &properties, const DtString &propertyName)
Finds the ReaderWriter object in the given set of properties with the specified name. Then verifies that the ReaderWriter matches the type specified as the template argument. Returns a valid pointer if successful.
virtual bool addProperty(DtPropertyInterface *property)
Adds an existing property to the properties container. The container will take ownership of the given...
Definition: propertyInterface.h:223
virtual DtPropertyInterface * findPropertyInterface(const DtString &propertyName)
Definition: propertyInterface.h:129
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:250
std::vector< DtMergePathStruct > DtMergePath
Definition: readerWriterFactory.h:181
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 const DtPropertyInterface * findPropertyInterface(const DtString &propertyName) const
Definition: propertyInterface.h:124
void setPropertyValue(DtReaderWriter *prop, T val)
Sets the value of the given ReaderWriter property. The template parameter type must be an appropriate...
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:58