24 #ifndef MEMORYBUNDLESET_H_
25 #define MEMORYBUNDLESET_H_
30 #include <ibrcommon/data/BloomFilter.h>
31 #include <ibrcommon/data/File.h>
64 virtual refcnt_ptr<BundleSetImpl>
copy()
const;
70 virtual void assign(
const refcnt_ptr<BundleSetImpl>&);
80 virtual void clear()
throw ();
110 std::set<dtn::data::MetaBundle>
getNotIn(
const ibrcommon::BloomFilter &filter)
const throw ();
115 virtual std::ostream &
serialize(std::ostream &stream)
const;
120 virtual std::istream &
deserialize(std::istream &stream);
125 static void setPath(
const ibrcommon::File &path);
130 virtual void sync()
throw ();
144 const std::string _name;
147 typedef std::set<dtn::data::MetaBundle> bundle_set;
151 typedef std::set<BundleSetImpl::ExpiringBundle> expire_set;
158 ibrcommon::BloomFilter _bf;
166 static ibrcommon::File __store_path__;
167 static bool __store_path_set__;
virtual bool has(const dtn::data::BundleID &bundle) const
virtual ~MemoryBundleSet()
virtual std::ostream & serialize(std::ostream &stream) const
virtual std::istream & deserialize(std::istream &stream)
virtual refcnt_ptr< BundleSetImpl > copy() const
MemoryBundleSet(BundleSet::Listener *listener=NULL, Length bf_size=1024)
virtual void assign(const refcnt_ptr< BundleSetImpl > &)
std::set< dtn::data::MetaBundle > getNotIn(const ibrcommon::BloomFilter &filter) const
virtual void add(const dtn::data::MetaBundle &bundle)
virtual void expire(const Timestamp timestamp)
virtual Size size() const
const ibrcommon::BloomFilter & getBloomFilter() const
static void setPath(const ibrcommon::File &path)