|
typedef etl::size_type_lookup< MEMORY_MODEL >::type | size_type |
| The type used for determining the size of queue.
|
|
typedef T | value_type |
| The type stored in the queue.
|
|
typedef T & | reference |
| A reference to the type used in the queue.
|
|
typedef const T & | const_reference |
| A const reference to the type used in the queue.
|
|
|
| queue_spsc_isr_base (T *p_buffer_, size_type max_size_) |
|
bool | push_implementation (const_reference value) |
| Push a value to the queue.
|
|
template<typename T1 > |
bool | emplace_implementation (const T1 &value1) |
|
template<typename T1 , typename T2 > |
bool | emplace_implementation (const T1 &value1, const T2 &value2) |
|
template<typename T1 , typename T2 , typename T3 > |
bool | emplace_implementation (const T1 &value1, const T2 &value2, const T3 &value3) |
|
template<typename T1 , typename T2 , typename T3 , typename T4 > |
bool | emplace_implementation (const T1 &value1, const T2 &value2, const T3 &value3, const T4 &value4) |
|
bool | pop_implementation (reference value) |
| Pop a value from the queue.
|
|
reference | front_implementation () |
| Peek a value at the front of the queue.
|
|
const_reference | front_implementation () const |
| Peek a value at the front of the queue.
|
|
bool | pop_implementation () |
| Pop a value from the queue and discard.
|
|
| ~queue_spsc_isr_base () |
| Destructor.
|
|
|
T * | p_buffer |
| The internal buffer.
|
|
size_type | write_index |
| Where to input new data.
|
|
size_type | read_index |
| Where to get the oldest data.
|
|
size_type | current_size |
| The current size of the queue.
|
|
const size_type | MAX_SIZE |
| The maximum number of items in the queue.
|
|
◆ available_from_isr()
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
How much free space available in the queue. Called from ISR.
◆ emplace_implementation() [1/4]
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
template<typename T1 >
Constructs a value in the queue 'in place'. If asserts or exceptions are enabled, throws an etl::queue_full if the queue if already full.
◆ emplace_implementation() [2/4]
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
template<typename T1 , typename T2 >
Constructs a value in the queue 'in place'. If asserts or exceptions are enabled, throws an etl::queue_full if the queue if already full.
◆ emplace_implementation() [3/4]
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
template<typename T1 , typename T2 , typename T3 >
bool etl::queue_spsc_isr_base< T, MEMORY_MODEL >::emplace_implementation |
( |
const T1 & |
value1, |
|
|
const T2 & |
value2, |
|
|
const T3 & |
value3 |
|
) |
| |
|
inlineprotected |
Constructs a value in the queue 'in place'. If asserts or exceptions are enabled, throws an etl::queue_full if the queue if already full.
◆ emplace_implementation() [4/4]
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
template<typename T1 , typename T2 , typename T3 , typename T4 >
bool etl::queue_spsc_isr_base< T, MEMORY_MODEL >::emplace_implementation |
( |
const T1 & |
value1, |
|
|
const T2 & |
value2, |
|
|
const T3 & |
value3, |
|
|
const T4 & |
value4 |
|
) |
| |
|
inlineprotected |
Constructs a value in the queue 'in place'. If asserts or exceptions are enabled, throws an etl::queue_full if the queue if already full.
◆ empty_from_isr()
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
Is the queue empty? Called from ISR.
◆ full_from_isr()
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
Is the queue full? Called from ISR.
◆ pop_from_isr()
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
Pop a value from the queue from an ISR.
Constructs a value in the queue 'in place'. If asserts or exceptions are enabled, throws an etl::queue_full if the queue if already full.
- Parameters
-
value | The value to use to construct the item to push to the queue. |
◆ size_from_isr()
template<typename T , const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
How many items in the queue? Called from ISR.
The documentation for this class was generated from the following file: