Go to the documentation of this file.
30 #ifndef __BASE_FILTERS_BASE_HH__
31 #define __BASE_FILTERS_BASE_HH__
38 #include "params/BloomFilterBase.hh"
62 Base(
const BloomFilterBaseParams*
p)
76 for (
auto& entry :
filter) {
142 for (
const auto& entry :
filter) {
151 #endif // __BASE_FILTERS_BASE_HH__
const int sizeBits
Number of bits needed to represent the size of the filter.
virtual void merge(const Base *other)
Merges the contents of both filters into this' (Bloom Filter union).
std::enable_if< std::is_integral< T >::value, int >::type floorLog2(T x)
Base(const BloomFilterBaseParams *p)
Create and clear the filter.
virtual void clear()
Clear the filter by resetting all values.
virtual void set(Addr addr)=0
Perform the filter specific function to set the corresponding entries (can be multiple) of an address...
const unsigned offsetBits
Number of LSB bits to ignore from the the addresses.
std::vector< SatCounter > filter
The filter itself.
virtual void unset(Addr addr)
Perform the filter specific function to clear the corresponding entries (can be multiple) of an addre...
uint64_t Addr
Address type This will probably be moved somewhere else in the near future.
virtual int getCount(Addr addr) const
Get the value stored in the corresponding filter entry of an address.
Implements an n bit saturating counter and provides methods to increment, decrement,...
virtual bool isSet(Addr addr) const
Check if the corresponding filter entries of an address should be considered as set.
const int setThreshold
Threshold at which a filter entry starts being considered as set.
virtual int getTotalCount() const
Get the total value stored in the filter entries.
Abstract superclass for simulation objects.
Generated on Wed Sep 30 2020 14:02:07 for gem5 by doxygen 1.8.17