|
|
typedef base_t::value_type | value_type |
| | The type stored in the queue.
|
|
typedef base_t::reference | reference |
| | A reference to the type used in the queue.
|
|
typedef base_t::const_reference | const_reference |
| | A const reference to the type used in the queue.
|
|
typedef base_t::size_type | size_type |
| | The type used for determining the size of the queue.
|
|
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.
|
|
|
bool | push (const_reference value) |
| | Push a value to the queue.
|
| bool | emplace () |
| template<typename T1> |
| bool | emplace (const T1 &value1) |
| template<typename T1, typename T2> |
| bool | emplace (const T1 &value1, const T2 &value2) |
| template<typename T1, typename T2, typename T3> |
| bool | emplace (const T1 &value1, const T2 &value2, const T3 &value3) |
| template<typename T1, typename T2, typename T3, typename T4> |
| bool | emplace (const T1 &value1, const T2 &value2, const T3 &value3, const T4 &value4) |
|
bool | pop (reference value) |
| | Pop a value from the queue.
|
|
bool | pop () |
| | Pop a value from the queue and discard.
|
|
reference | front () |
| | Peek a value at the front of the queue.
|
|
const_reference | front () const |
| | Peek a value at the front of the queue.
|
|
void | clear () |
| | Clear the queue.
|
|
bool | empty () const |
| | Is the queue empty?
|
|
bool | full () const |
| | Is the queue full?
|
|
size_type | size () const |
| | How many items in the queue?
|
|
size_type | available () const |
| | How much free space available in the queue.
|
|
bool | push_from_isr (const_reference value) |
| | Push a value to the queue from an ISR.
|
| bool | pop_from_isr (reference value) |
| | Pop a value from the queue from an ISR.
|
|
reference | front_from_isr () |
| | Peek a value at the front of the queue from an ISR.
|
| size_type | available_from_isr () const |
|
void | clear_from_isr () |
| | Clear the queue from the ISR.
|
| bool | empty_from_isr () const |
| bool | full_from_isr () const |
| size_type | size_from_isr () const |
|
size_type | capacity () const |
| | How many items can the queue hold.
|
|
size_type | max_size () const |
| | How many items can the queue hold.
|
template<typename T, typename TAccess, const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
class etl::iqueue_spsc_isr< T, TAccess, MEMORY_MODEL >
This is the base for all queue_spsc_isrs that contain a particular type.
Normally a reference to this type will be taken from a derived queue_spsc_isr.
etl::queue_spsc_isr_isr<int, 10> myQueue;
etl::iqueue_isr<int>& iQueue = myQueue;
This queue supports concurrent access by one producer and one consumer.
- Template Parameters
-
template<typename T, typename TAccess, const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
template<typename T1, typename T2>
| bool etl::iqueue_spsc_isr< T, TAccess, MEMORY_MODEL >::emplace |
( |
const T1 & | value1, |
|
|
const T2 & | value2 ) |
|
inline |
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.
template<typename T, typename TAccess, const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
template<typename T1, typename T2, typename T3>
| bool etl::iqueue_spsc_isr< T, TAccess, MEMORY_MODEL >::emplace |
( |
const T1 & | value1, |
|
|
const T2 & | value2, |
|
|
const T3 & | value3 ) |
|
inline |
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.
template<typename T, typename TAccess, const size_t MEMORY_MODEL = etl::memory_model::MEMORY_MODEL_LARGE>
template<typename T1, typename T2, typename T3, typename T4>
| bool etl::iqueue_spsc_isr< T, TAccess, MEMORY_MODEL >::emplace |
( |
const T1 & | value1, |
|
|
const T2 & | value2, |
|
|
const T3 & | value3, |
|
|
const T4 & | value4 ) |
|
inline |
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.