HOG2
Public Member Functions | Private Member Functions | Private Attributes | List of all members
compressible_bloom_filter Class Reference

#include <BloomFilter.h>

Inheritance diagram for compressible_bloom_filter:
Inheritance graph
[legend]
Collaboration diagram for compressible_bloom_filter:
Collaboration graph
[legend]

Public Member Functions

 compressible_bloom_filter (const bloom_parameters &p)
 
unsigned long long int size () const
 
bool compress (const double &percentage)
 
- Public Member Functions inherited from bloom_filter
 bloom_filter ()
 
 bloom_filter (const bloom_parameters &p)
 
 bloom_filter (const bloom_filter &filter)
 
bool operator== (const bloom_filter &f) const
 
bool operator!= (const bloom_filter &f) const
 
bloom_filteroperator= (const bloom_filter &f)
 
virtual ~bloom_filter ()
 
bool operator! () const
 
void clear ()
 
void insert (const unsigned char *key_begin, const std::size_t &length)
 
template<typename T >
void insert (const T &t)
 
void insert (const std::string &key)
 
void insert (const char *data, const std::size_t &length)
 
template<typename InputIterator >
void insert (const InputIterator begin, const InputIterator end)
 
virtual bool contains (const unsigned char *key_begin, const std::size_t length) const
 
template<typename T >
bool contains (const T &t) const
 
bool contains (const std::string &key) const
 
bool contains (const char *data, const std::size_t &length) const
 
template<typename InputIterator >
InputIterator contains_all (const InputIterator begin, const InputIterator end) const
 
template<typename InputIterator >
InputIterator contains_none (const InputIterator begin, const InputIterator end) const
 
std::size_t element_count () const
 
double effective_fpp () const
 
bloom_filteroperator&= (const bloom_filter &f)
 
bloom_filteroperator|= (const bloom_filter &f)
 
bloom_filteroperator^= (const bloom_filter &f)
 
const cell_typetable () const
 
std::size_t hash_count ()
 

Private Member Functions

void compute_indices (const bloom_type &hash, std::size_t &bit_index, std::size_t &bit) const
 

Private Attributes

std::vector< unsigned long long int > size_list
 

Additional Inherited Members

- Protected Types inherited from bloom_filter
typedef unsigned int bloom_type
 
typedef unsigned char cell_type
 
- Protected Member Functions inherited from bloom_filter
void generate_unique_salt ()
 
bloom_type hash_ap (const unsigned char *begin, std::size_t remaining_length, bloom_type hash) const
 
- Protected Attributes inherited from bloom_filter
std::vector< bloom_typesalt_
 
unsigned char * bit_table_
 
unsigned int salt_count_
 
unsigned long long int table_size_
 
unsigned long long int raw_table_size_
 
unsigned long long int projected_element_count_
 
unsigned int inserted_element_count_
 
unsigned long long int random_seed_
 
double desired_false_positive_probability_
 

Detailed Description

Definition at line 610 of file BloomFilter.h.

Constructor & Destructor Documentation

◆ compressible_bloom_filter()

compressible_bloom_filter::compressible_bloom_filter ( const bloom_parameters p)
inline

Definition at line 614 of file BloomFilter.h.

References size_list, and bloom_filter::table_size_.

Member Function Documentation

◆ compress()

bool compressible_bloom_filter::compress ( const double &  percentage)
inline

◆ compute_indices()

void compressible_bloom_filter::compute_indices ( const bloom_type hash,
std::size_t &  bit_index,
std::size_t &  bit 
) const
inlineprivatevirtual

Reimplemented from bloom_filter.

Definition at line 662 of file BloomFilter.h.

References bits_per_char, and size_list.

◆ size()

unsigned long long int compressible_bloom_filter::size ( ) const
inlinevirtual

Reimplemented from bloom_filter.

Definition at line 620 of file BloomFilter.h.

References size_list.

Member Data Documentation

◆ size_list

std::vector<unsigned long long int> compressible_bloom_filter::size_list
private

Definition at line 672 of file BloomFilter.h.

Referenced by compress(), compressible_bloom_filter(), compute_indices(), and size().


The documentation for this class was generated from the following file: