00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef _SESSION_BLOCK_PROCESSOR_H_
00018 #define _SESSION_BLOCK_PROCESSOR_H_
00019
00020 #include "BlockProcessor.h"
00021
00022 namespace dtn {
00023
00027 class SessionBlockProcessor : public BlockProcessor {
00028 public:
00030 SessionBlockProcessor();
00031
00033 int prepare(const Bundle* bundle, BlockInfoVec* xmit_blocks,
00034 const BlockInfo* source, const LinkRef& link,
00035 BlockInfo::list_owner_t list);
00036
00037 int generate(const Bundle* bundle, BlockInfoVec* xmit_blocks,
00038 BlockInfo* block, const LinkRef& link, bool last);
00039
00040 int consume(Bundle* bundle, BlockInfo* block, u_char* buf, size_t len);
00042 };
00043
00044 }
00045
00046 #endif