ESPHome 2025.6.3
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
esphome::esp32_ble::LockFreeQueue< T, SIZE > Class Template Reference

#include <queue.h>

Public Member Functions

 LockFreeQueue ()
 
bool push (T *element)
 
T * pop ()
 
size_t size () const
 
uint16_t get_and_reset_dropped_count ()
 
void increment_dropped_count ()
 
bool empty () const
 
bool full () const
 

Protected Attributes

T * buffer_ [SIZE]
 
std::atomic< uint16_t > dropped_count_
 
std::atomic< uint8_t > head_
 
std::atomic< uint8_t > tail_
 

Detailed Description

template<class T, uint8_t SIZE>
class esphome::esp32_ble::LockFreeQueue< T, SIZE >

Definition at line 21 of file queue.h.

Constructor & Destructor Documentation

◆ LockFreeQueue()

template<class T , uint8_t SIZE>
esphome::esp32_ble::LockFreeQueue< T, SIZE >::LockFreeQueue ( )
inline

Definition at line 23 of file queue.h.

Member Function Documentation

◆ empty()

template<class T , uint8_t SIZE>
bool esphome::esp32_ble::LockFreeQueue< T, SIZE >::empty ( ) const
inline

Definition at line 65 of file queue.h.

◆ full()

template<class T , uint8_t SIZE>
bool esphome::esp32_ble::LockFreeQueue< T, SIZE >::full ( ) const
inline

Definition at line 67 of file queue.h.

◆ get_and_reset_dropped_count()

template<class T , uint8_t SIZE>
uint16_t esphome::esp32_ble::LockFreeQueue< T, SIZE >::get_and_reset_dropped_count ( )
inline

Definition at line 61 of file queue.h.

◆ increment_dropped_count()

template<class T , uint8_t SIZE>
void esphome::esp32_ble::LockFreeQueue< T, SIZE >::increment_dropped_count ( )
inline

Definition at line 63 of file queue.h.

◆ pop()

template<class T , uint8_t SIZE>
T * esphome::esp32_ble::LockFreeQueue< T, SIZE >::pop ( )
inline

Definition at line 43 of file queue.h.

◆ push()

template<class T , uint8_t SIZE>
bool esphome::esp32_ble::LockFreeQueue< T, SIZE >::push ( T * element)
inline

Definition at line 25 of file queue.h.

◆ size()

template<class T , uint8_t SIZE>
size_t esphome::esp32_ble::LockFreeQueue< T, SIZE >::size ( ) const
inline

Definition at line 55 of file queue.h.

Field Documentation

◆ buffer_

template<class T , uint8_t SIZE>
T* esphome::esp32_ble::LockFreeQueue< T, SIZE >::buffer_[SIZE]
protected

Definition at line 73 of file queue.h.

◆ dropped_count_

template<class T , uint8_t SIZE>
std::atomic<uint16_t> esphome::esp32_ble::LockFreeQueue< T, SIZE >::dropped_count_
protected

Definition at line 75 of file queue.h.

◆ head_

template<class T , uint8_t SIZE>
std::atomic<uint8_t> esphome::esp32_ble::LockFreeQueue< T, SIZE >::head_
protected

Definition at line 77 of file queue.h.

◆ tail_

template<class T , uint8_t SIZE>
std::atomic<uint8_t> esphome::esp32_ble::LockFreeQueue< T, SIZE >::tail_
protected

Definition at line 79 of file queue.h.


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