bloom_filter(size_t m, unsigned long k, const HashPair& fns = HashPair()) : mem_block_t(super::nb_bytes__(m)), super(m, k, (unsigned char*)mem_block_t::get_ptr(), fns) { if(!mem_block_t::get_ptr()) throw std::runtime_error(err::msg() << "Failed to allocate " << super::nb_bytes__(m) << " bytes of memory for bloom_filter"); }
bloom_filter(double fp, size_t n, const HashPair& fns = HashPair()) : mem_block_t(super::nb_bytes__(super::opt_m(fp, n))), super(super::opt_m(fp, n), super::opt_k(fp), (unsigned char*)mem_block_t::get_ptr(), fns) { if(!mem_block_t::get_ptr()) throw std::runtime_error(err::msg() << "Failed to allocate " << super::nb_bytes__(super::opt_m(fp, n)) << " bytes of memory for bloom_filter"); }
bloom_filter(size_t m, unsigned long k, std::istream& is, const HashPair& fns = HashPair()) : mem_block_t(super::nb_bytes__(m)), super(m, k, (unsigned char*)mem_block_t::get_ptr(), fns) { if(!mem_block_t::get_ptr()) eraise(std::runtime_error) << "Failed to allocate " << super::nb_bytes__(m) << " bytes of memory for bloom_filter"; is.read((char*)mem_block_t::get_ptr(), mem_block_t::get_size()); }
bloom_filter_base(size_t m, unsigned long k, unsigned char* ptr, const HashPair& fns = HashPair()) : super(m, k, ptr, fns) { }
bloom_filter_file(size_t m, unsigned long k, const char* path, const HashPair& fns = HashPair(), off_t offset = 0) : mapped_file(path), super(m, k, (unsigned char*)mapped_file::base() + offset, fns) { }
bloom_base(size_t m, unsigned long k, unsigned char* ptr, const HashPair& fns = HashPair()) : d_(m), k_(k), data_(ptr), hash_fns_(fns) { }
void StaticHashTableBuilder::add (const std::string & key, const std::string & value) { sf::HashValue h = sf::hash ((unsigned char*) key.c_str()); mHashes.push_back (HashPair (KeyValue (key, value), h)); }