Bluenet  5.7.0
Bluenet, firmware for nRF52 smart home devices
Loading...
Searching...
No Matches
ExactMatchFilter Class Reference

#include <cs_ExactMatchFilter.h>

Inheritance diagram for ExactMatchFilter:
Collaboration diagram for ExactMatchFilter:

Public Member Functions

 ExactMatchFilter (exact_match_filter_data_t *data)
 
 ExactMatchFilter ()
 Use this default constructor with care, _data is never checked in this class. More...
 
bool contains (const void *key, size_t keyLengthInBytes) override
 
bool isValid () override
 
int find (const void *item, size_t itemSize)
 if contains(key,itemSize): returns the index of the item else: return -1 More...
 
constexpr size_t bufferSize ()
 
constexpr size_t size ()
 
- Public Member Functions inherited from FilterInterface
virtual ~FilterInterface ()=default
 
virtual bool contains (const void *key, size_t keyLengthInBytes)=0
 
virtual size_t size ()=0
 
virtual bool isValid ()=0
 

Static Public Member Functions

static constexpr size_t bufferSize (uint8_t itemCount, uint8_t itemSize)
 Size of the itemArray in bytes. More...
 
static constexpr size_t size (uint8_t itemCount, uint8_t itemSize)
 Total number of bytes that a filter with the given parameters would occupy. More...
 

Private Member Functions

uint8_t * getItem (size_t index)
 

Private Attributes

exact_match_filter_data_t_data
 

Constructor & Destructor Documentation

◆ ExactMatchFilter() [1/2]

◆ ExactMatchFilter() [2/2]

Use this default constructor with care, _data is never checked in this class.

Member Function Documentation

◆ bufferSize() [1/2]

constexpr size_t ExactMatchFilter::bufferSize ( )
inlineconstexpr

◆ bufferSize() [2/2]

static constexpr size_t ExactMatchFilter::bufferSize ( uint8_t  itemCount,
uint8_t  itemSize 
)
inlinestaticconstexpr

Size of the itemArray in bytes.

◆ contains()

bool ExactMatchFilter::contains ( const void *  key,
size_t  keyLengthInBytes 
)
overridevirtual

Implements FilterInterface.

◆ find()

int ExactMatchFilter::find ( const void *  item,
size_t  itemSize 
)

if contains(key,itemSize): returns the index of the item else: return -1

◆ getItem()

uint8_t * ExactMatchFilter::getItem ( size_t  index)
private

◆ isValid()

bool ExactMatchFilter::isValid ( )
overridevirtual

Implements FilterInterface.

◆ size() [1/2]

constexpr size_t ExactMatchFilter::size ( )
inlineconstexprvirtual

Implements FilterInterface.

◆ size() [2/2]

static constexpr size_t ExactMatchFilter::size ( uint8_t  itemCount,
uint8_t  itemSize 
)
inlinestaticconstexpr

Total number of bytes that a filter with the given parameters would occupy.

Member Data Documentation

◆ _data

exact_match_filter_data_t* ExactMatchFilter::_data
private

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