diff -r 8fd6c4d44071 -r 3613617d3076 src/DataTypeWriterBase.h --- a/src/DataTypeWriterBase.h Sun Jul 22 10:26:22 2018 +0200 +++ b/src/DataTypeWriterBase.h Sun Jul 22 17:19:25 2018 +0200 @@ -32,6 +32,15 @@ virtual void writeString(std::ostream& output, const string_t &stringValue) = 0; /** + * @param output output stream, should be at position where the value is to be written; the stream will not be closed not flushed after writing + * @param value raw pointer to the value, must exactly match data type of this writer + * @param type used as a safety mechanism to avoid wrong pointer interpretation; + * should be called in this way: writeRaw(output, valuePointer, typeid(valuePointer)); + * if the type does not match, the RelpipeWriterException is thrown + */ + virtual void writeRaw(std::ostream& output, const void * value, const std::type_info& type) = 0; + + /** * @param dataType data type code as defined in DDP L0 * @return whether this class supports conversions of this type */