00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef _UNKNOWN_BLOCK_PROCESSOR_H_
00018 #define _UNKNOWN_BLOCK_PROCESSOR_H_
00019
00020 #include <oasys/util/Singleton.h>
00021
00022 #include "BlockProcessor.h"
00023
00024 namespace dtn {
00025
00029 class UnknownBlockProcessor : public BlockProcessor,
00030 public oasys::Singleton<UnknownBlockProcessor> {
00031 public:
00033 UnknownBlockProcessor();
00034
00036 int prepare(const Bundle* bundle,
00037 BlockInfoVec* xmit_blocks,
00038 const BlockInfo* source,
00039 const LinkRef& link,
00040 list_owner_t list);
00041
00042 int generate(const Bundle* bundle,
00043 BlockInfoVec* xmit_blocks,
00044 BlockInfo* block,
00045 const LinkRef& link,
00046 bool last);
00047
00048 bool validate(const Bundle* bundle,
00049 BlockInfoVec* block_list,
00050 BlockInfo* block,
00051 status_report_reason_t* reception_reason,
00052 status_report_reason_t* deletion_reason);
00054 };
00055
00056 }
00057
00058 #endif