#include <Block.h>

Public Member Functions | |
| Block (Block *block) | |
| Block (NetworkFrame *frame) | |
| Block (const Block &k) | |
| virtual | ~Block () |
| NetworkFrame & | getFrame () const |
| virtual unsigned char | getType () const |
| bool | isProcessed () const |
| BlockFlags | getBlockFlags () const |
| void | setBlockFlags (BlockFlags flags) |
| unsigned int | getHeaderSize () const |
| NetworkFrame * | dissociateNetworkFrame () |
| void | updateBlockSize () |
| virtual bool | isAdministrativeBlock () const |
Static Public Attributes | |
| static const unsigned char | BLOCK_TYPE = 0 |
Protected Member Functions | |
| unsigned int | getBodyIndex () const |
Protected Attributes | |
| bool | m_processed |
Private Attributes | |
| NetworkFrame * | m_frame |
| dtn::data::Block::Block | ( | Block * | block | ) |
Use a existing Block to create a new Block-Object. The used Block will be deleted.
| [in] | block | The block to use as base. |
References dissociateNetworkFrame().
| dtn::data::Block::Block | ( | NetworkFrame * | frame | ) |
Use a existing NetworkFrame to create a new Block-Object.
| [in] | frame | The NetworkFrame to use as base. |
| dtn::data::Block::Block | ( | const Block & | k | ) |
copy the block
| dtn::data::Block::~Block | ( | ) | [virtual] |
Destructor
References m_frame.
| NetworkFrame & dtn::data::Block::getFrame | ( | ) | const |
get the reference to the NetworkFrame of this block
References m_frame.
Referenced by emma::DiscoverBlockFactory::copy(), dtn::data::PayloadBlockFactory::copy(), dtn::data::BlockFactory::copy(), dtn::data::StatusReportBlock::getCreationTimestamp(), dtn::data::CustodySignalBlock::getCreationTimestamp(), dtn::data::StatusReportBlock::getCreationTimestampSequence(), dtn::data::CustodySignalBlock::getCreationTimestampSequence(), dtn::data::StatusReportBlock::getFragmentLength(), dtn::data::CustodySignalBlock::getFragmentLength(), dtn::data::StatusReportBlock::getFragmentOffset(), dtn::data::CustodySignalBlock::getFragmentOffset(), dtn::data::PayloadBlock::getLength(), dtn::data::PayloadBlock::getPayload(), dtn::data::PayloadBlock::getPayloadRange(), dtn::data::StatusReportBlock::getReasonCode(), dtn::data::StatusReportBlock::getSource(), dtn::data::CustodySignalBlock::getSource(), dtn::data::AdministrativeBlock::getStatusFlags(), dtn::data::StatusReportBlock::getTimeOfCustodyAcceptance(), dtn::data::StatusReportBlock::getTimeOfDeletion(), dtn::data::StatusReportBlock::getTimeOfDelivery(), dtn::data::StatusReportBlock::getTimeOfForwarding(), dtn::data::StatusReportBlock::getTimeOfReceipt(), dtn::data::CustodySignalBlock::getTimeOfSignal(), dtn::data::CustodySignalBlock::isAccepted(), dtn::data::PayloadBlockFactory::newCustodySignalBlock(), emma::DiscoverBlockFactory::newDiscoverBlock(), dtn::data::PayloadBlockFactory::newPayloadBlock(), dtn::data::PayloadBlockFactory::newStatusReportBlock(), emma::DiscoverBlockFactory::parse(), dtn::data::BundleFactory::parse(), dtn::data::CustodySignalBlock::setAccepted(), dtn::data::StatusReportBlock::setCreationTimestamp(), dtn::data::CustodySignalBlock::setCreationTimestamp(), dtn::data::StatusReportBlock::setCreationTimestampSequence(), dtn::data::CustodySignalBlock::setCreationTimestampSequence(), dtn::data::StatusReportBlock::setFragmentLength(), dtn::data::CustodySignalBlock::setFragmentLength(), dtn::data::StatusReportBlock::setFragmentOffset(), dtn::data::CustodySignalBlock::setFragmentOffset(), dtn::data::PayloadBlock::setPayload(), dtn::data::StatusReportBlock::setReasonCode(), dtn::data::StatusReportBlock::setSource(), dtn::data::CustodySignalBlock::setSource(), dtn::data::AdministrativeBlock::setStatusFlags(), dtn::data::StatusReportBlock::setTimeOfCustodyAcceptance(), dtn::data::StatusReportBlock::setTimeOfDeletion(), dtn::data::StatusReportBlock::setTimeOfDelivery(), dtn::data::StatusReportBlock::setTimeOfForwarding(), dtn::data::StatusReportBlock::setTimeOfReceipt(), dtn::data::CustodySignalBlock::setTimeOfSignal(), and updateBlockSize().
| unsigned char dtn::data::Block::getType | ( | ) | const [virtual] |
Get the type of the block.
References dtn::data::NetworkFrame::getChar(), and m_frame.
Referenced by dtn::data::BundleFactory::copyBlock(), and dtn::data::Bundle::getBlocks().
| bool dtn::data::Block::isProcessed | ( | ) | const |
| BlockFlags dtn::data::Block::getBlockFlags | ( | ) | const |
Get the processing flags of the block.
References dtn::data::NetworkFrame::getSDNV(), and m_frame.
Referenced by dtn::data::Bundle::appendBlock(), getBodyIndex(), emma::DiscoverBlockFactory::newDiscoverBlock(), and dtn::data::Bundle::removeBlock().
| void dtn::data::Block::setBlockFlags | ( | BlockFlags | flags | ) |
Set the processing flags of the block.
| [in] | flags | A BlockFlags object containing the processing flags to set. |
References dtn::data::ProcessingFlags::getValue(), m_frame, and dtn::data::NetworkFrame::set().
Referenced by dtn::data::Bundle::appendBlock(), and dtn::data::Bundle::removeBlock().
| unsigned int dtn::data::Block::getHeaderSize | ( | ) | const |
Get the size of the header. This is the block size - payload size.
References getBodyIndex(), dtn::data::NetworkFrame::getSize(), and m_frame.
| NetworkFrame * dtn::data::Block::dissociateNetworkFrame | ( | ) |
dissociate the NetworkFrame from this object
References m_frame.
Referenced by Block(), and dtn::data::PayloadBlockFactory::castAdministrativeBlock().
| void dtn::data::Block::updateBlockSize | ( | ) |
Updates the length field. This function should called after a set()-function.
References getBodyIndex(), dtn::data::NetworkFrame::getFieldSizeMap(), getFrame(), dtn::data::NetworkFrame::getSize(), and dtn::data::NetworkFrame::set().
Referenced by dtn::data::PayloadBlockFactory::newCustodySignalBlock(), emma::DiscoverBlockFactory::newDiscoverBlock(), dtn::data::PayloadBlockFactory::newStatusReportBlock(), dtn::data::StatusReportBlock::setMatch(), and dtn::data::CustodySignalBlock::setMatch().
| bool dtn::data::Block::isAdministrativeBlock | ( | ) | const [virtual] |
returns true, if this is a administrative block like CustodySignalBlock.
Reimplemented in dtn::data::AdministrativeBlock.
Referenced by dtn::data::PayloadBlockFactory::copy().
| unsigned int dtn::data::Block::getBodyIndex | ( | ) | const [protected] |
References dtn::data::CONTAINS_EID_FIELD, getBlockFlags(), dtn::data::NetworkFrame::getSDNV(), and m_frame.
Referenced by dtn::data::CustodySignalBlock::CustodySignalBlock(), dtn::data::StatusReportBlock::getField(), dtn::data::CustodySignalBlock::getField(), dtn::data::StatusReportBlock::getFragmentLength(), getHeaderSize(), dtn::data::PayloadBlock::getLength(), dtn::data::PayloadBlock::getPayload(), dtn::data::PayloadBlock::getPayloadRange(), dtn::data::AdministrativeBlock::getStatusFlags(), dtn::data::PayloadBlock::setPayload(), dtn::data::AdministrativeBlock::setStatusFlags(), dtn::data::StatusReportBlock::StatusReportBlock(), and updateBlockSize().
const unsigned char dtn::data::Block::BLOCK_TYPE = 0 [static] |
Reimplemented in dtn::data::PayloadBlock, and emma::DiscoverBlock.
Referenced by dtn::data::BlockFactory::getBlockType().
bool dtn::data::Block::m_processed [protected] |
Referenced by emma::DiscoverBlock::DiscoverBlock(), isProcessed(), and dtn::data::PayloadBlock::PayloadBlock().
NetworkFrame* dtn::data::Block::m_frame [private] |
Referenced by dissociateNetworkFrame(), getBlockFlags(), getBodyIndex(), getFrame(), getHeaderSize(), getType(), setBlockFlags(), and ~Block().
1.5.6