39 m_filter_size_bits =
floorLog2(m_filter_size);
44 m_filter.resize(m_filter_size);
55 for (
int i = 0;
i < m_filter_size;
i++) {
63 int i = get_index(addr);
64 if (m_filter[i] < m_count)
72 int i = get_index(addr);
105 return m_filter[get_index(addr)];
113 for (
int i = 0;
i < m_filter_size;
i++) {
114 count += m_filter[
i];
122 return get_index(addr);
148 m_filter_size_bits - 1);
void decrement(Addr addr)
Addr bitSelect(Addr addr, unsigned int small, unsigned int big)
void merge(AbstractBloomFilter *other_filter)
void increment(Addr addr)
~LSB_CountingBloomFilter()
LSB_CountingBloomFilter(int head, int tail)
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
int floorLog2(unsigned x)
void writeBit(const int index, const int value)
int readBit(const int index)
void print(std::ostream &out) const
static uint32_t getBlockSizeBits()