13#ifndef DCM_TREE_SERIALIZATION_H 
   14#define DCM_TREE_SERIALIZATION_H 
   17  #pragma warning (push) 
   18  #pragma warning (disable : 4350) 
   22#include <boost/cstdint.hpp> 
   23#include <boost/limits.hpp> 
   86        void writeX(
const std::string &value);
 
   93            boost::uint32_t c = 
static_cast<boost::uint32_t
>(
tc);
 
   94            writeX(&c, 
sizeof(boost::uint32_t));
 
 
   98        virtual void writeX(
const void *data, boost::uint32_t size) = 0;
 
 
  117        virtual void readX(
void *data, boost::uint32_t size) = 0;
 
 
Interface that provides a method to deserialize an object.
 
virtual ~Deserializable()
Empty.
 
virtual void deserializeX(Source &source)=0
Overwrites data of this object with data from source.
 
Interface of a class that can be used to deserialize objects without a default constructor.
 
virtual T deserializeX(Source &source)=0
Deserializes an object.
 
virtual ~DeserializerIntf()
 
Interface that provides a method to serialize an object.
 
virtual void serializeX(Sink &sink) const =0
Writes data of this object to sink.
 
virtual ~Serializable()
Empty.
 
Interface of a class that can be used to serialize objects.
 
virtual ~SerializerIntf()
 
virtual void serializeX(Sink &sink, const T &value)=0
Serializes an object.
 
Interface of a data sink for the serialization of objects.
 
virtual void writeX(const void *data, boost::uint32_t size)=0
Writes a specified number of bytes.
 
void writeX(const std::string &value)
Writes a QString.
 
void writeTypeX(TypeCode tc)
Writes a TypeCode.
 
Interface of a data source for the deserialization of objects.
 
void readTypeX(TypeCode expected)
Reads a TypeCode.
 
void readX(std::string &value)
 
virtual void readX(void *data, boost::uint32_t size)=0
Reads a specified number of bytes.
 
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
 
TypeCode
Used to encode the type of the next serialized value into the stream.
 
@ TC_SIGNED_LONG
signed long
 
@ TC_SIGNED_SHORT
signed short
 
@ TC_UNSIGNED_LONG_LONG
unsigned long
 
@ TC_SIGNED_LONG_LONG
signed long
 
@ TC_UNSIGNED_INT
unsigned int
 
@ TC_SIGNED_INT
signed int
 
@ TC_MULTIMAP
std::multimap
 
@ TC_UNSIGNED_SHORT
unsigned short
 
@ TC_UNSIGNED_LONG
unsigned long