IBR-DTNSuite  0.10
dtn::data::DefaultSerializer Class Reference

#include <Serializer.h>

Inheritance diagram for dtn::data::DefaultSerializer:
Inheritance graph
Collaboration diagram for dtn::data::DefaultSerializer:
Collaboration graph

Public Member Functions

 DefaultSerializer (std::ostream &stream)
 
 DefaultSerializer (std::ostream &stream, const Dictionary &d)
 
virtual ~DefaultSerializer ()
 
virtual Serializeroperator<< (const dtn::data::Bundle &obj)
 
virtual Serializeroperator<< (const dtn::data::PrimaryBlock &obj)
 
virtual Serializeroperator<< (const dtn::data::Block &obj)
 
virtual Serializeroperator<< (const dtn::data::BundleFragment &obj)
 
virtual Length getLength (const dtn::data::Bundle &obj)
 
virtual Length getLength (const dtn::data::PrimaryBlock &obj) const
 
virtual Length getLength (const dtn::data::Block &obj) const
 
- Public Member Functions inherited from dtn::data::Serializer
virtual ~Serializer ()
 

Protected Member Functions

Serializerserialize (const dtn::data::PayloadBlock &obj, const Length &clip_offset, const Length &clip_length)
 
void rebuildDictionary (const dtn::data::Bundle &obj)
 
bool isCompressable (const dtn::data::Bundle &obj) const
 

Protected Attributes

std::ostream & _stream
 
Dictionary _dictionary
 
bool _compressable
 

Detailed Description

Definition at line 101 of file Serializer.h.

Constructor & Destructor Documentation

dtn::data::DefaultSerializer::DefaultSerializer ( std::ostream &  stream)

Default serializer.

Parameters
streamStream to write to

Definition at line 44 of file Serializer.cpp.

dtn::data::DefaultSerializer::DefaultSerializer ( std::ostream &  stream,
const Dictionary d 
)

Initialize the Serializer with a default dictionary. This will be used to write the right values in the EID reference part of blocks.

Parameters
streamStream to write to
dThe default dictionary

Definition at line 49 of file Serializer.cpp.

virtual dtn::data::DefaultSerializer::~DefaultSerializer ( )
inlinevirtual

Destructor

Definition at line 121 of file Serializer.h.

Member Function Documentation

Length dtn::data::DefaultSerializer::getLength ( const dtn::data::Bundle obj)
virtual
bool dtn::data::DefaultSerializer::isCompressable ( const dtn::data::Bundle obj) const
protected
Serializer & dtn::data::DefaultSerializer::operator<< ( const dtn::data::Bundle obj)
virtual

Implements dtn::data::Serializer.

Reimplemented in dtn::security::StrictSerializer.

Definition at line 66 of file Serializer.cpp.

References dtn::data::Bundle::begin(), dtn::data::Bundle::end(), and rebuildDictionary().

Here is the call graph for this function:

void dtn::data::DefaultSerializer::rebuildDictionary ( const dtn::data::Bundle obj)
protected

Definition at line 54 of file Serializer.cpp.

References _compressable, _dictionary, dtn::data::Dictionary::add(), dtn::data::Dictionary::clear(), and isCompressable().

Referenced by getLength(), dtn::security::StrictSerializer::operator<<(), and operator<<().

Here is the call graph for this function:

Serializer & dtn::data::DefaultSerializer::serialize ( const dtn::data::PayloadBlock obj,
const Length clip_offset,
const Length clip_length 
)
protected

Member Data Documentation

bool dtn::data::DefaultSerializer::_compressable
protected
Dictionary dtn::data::DefaultSerializer::_dictionary
protected
std::ostream& dtn::data::DefaultSerializer::_stream
protected

The documentation for this class was generated from the following files: