IBR-DTNSuite
0.8
|
00001 /* 00002 * MetaBundle.h 00003 * 00004 * Created on: 16.02.2010 00005 * Author: morgenro 00006 */ 00007 00008 #ifndef METABUNDLE_H_ 00009 #define METABUNDLE_H_ 00010 00011 #include "ibrdtn/data/BundleID.h" 00012 #include "ibrdtn/data/Bundle.h" 00013 #include "ibrdtn/data/DTNTime.h" 00014 #include "ibrdtn/data/EID.h" 00015 00016 namespace dtn 00017 { 00018 namespace data 00019 { 00020 class MetaBundle : public dtn::data::BundleID 00021 { 00022 public: 00023 MetaBundle(); 00024 MetaBundle(const dtn::data::BundleID &id); 00025 MetaBundle(const dtn::data::Bundle &b); 00026 virtual ~MetaBundle(); 00027 00028 int getPriority() const; 00029 bool get(dtn::data::PrimaryBlock::FLAGS flag) const; 00030 00031 dtn::data::DTNTime received; 00032 size_t lifetime; 00033 dtn::data::EID destination; 00034 dtn::data::EID reportto; 00035 dtn::data::EID custodian; 00036 size_t appdatalength; 00037 size_t procflags; 00038 size_t expiretime; 00039 size_t hopcount; 00040 size_t payloadlength; 00041 }; 00042 } 00043 } 00044 00045 #endif /* METABUNDLE_H_ */