distortos  v0.5.0
object-oriented C++ RTOS for microcontrollers
distortos::test::QueueWrapper Class Referenceabstract

wrapper for [Raw]{Fifo,Message}Queue More...

#include <QueueWrappers.hpp>

Inheritance diagram for distortos::test::QueueWrapper:
[legend]

Public Member Functions

virtual ~QueueWrapper ()=0
 QueueWrapper's destructor. More...
 
virtual bool check (uint8_t priority1, const OperationCountingType &value1, uint8_t priority2, const OperationCountingType &value2) const =0
 Tests whether pushed and popped data match. More...
 
virtual bool checkCounters (size_t constructed, size_t copyConstructed, size_t moveConstructed, size_t destructed, size_t copyAssigned, size_t moveAssigned, size_t swapped) const =0
 Wrapper for OperationCountingType::checkCounters(). More...
 
virtual int emplace (uint8_t priority, OperationCountingType::Value value={}) const =0
 Wrapper for {Fifo,Message}Queue::emplace() or Raw{Fifo,Message}Queue::push() More...
 
virtual int pop (uint8_t &priority, OperationCountingType &value) const =0
 Wrapper for [Raw]{Fifo,Message}Queue::pop() More...
 
virtual int push (uint8_t priority, const OperationCountingType &value) const =0
 Wrapper for {Fifo,Message}Queue::push(..., const OperationCountingType&) or Raw{Fifo,Message}Queue::push() More...
 
virtual int push (uint8_t priority, OperationCountingType &&value) const =0
 Wrapper for {Fifo,Message}Queue::push(..., OperationCountingType&&) or Raw{Fifo,Message}Queue::push() More...
 
virtual int tryEmplace (uint8_t priority, OperationCountingType::Value value={}) const =0
 Wrapper for {Fifo,Message}Queue::tryEmplace() or Raw{Fifo,Message}Queue::tryPush() More...
 
virtual int tryEmplaceFor (TickClock::duration duration, uint8_t priority, OperationCountingType::Value value={}) const =0
 Wrapper for {Fifo,Message}Queue::tryEmplaceFor() or Raw{Fifo,Message}Queue::tryPushFor() More...
 
virtual int tryEmplaceUntil (TickClock::time_point timePoint, uint8_t priority, OperationCountingType::Value value={}) const =0
 Wrapper for {Fifo,Message}Queue::tryEmplaceUntil() or Raw{Fifo,Message}Queue::tryPushUntil() More...
 
virtual int tryPop (uint8_t &priority, OperationCountingType &value) const =0
 Wrapper for [Raw]{Fifo,Message}Queue::tryPop() More...
 
virtual int tryPopFor (TickClock::duration duration, uint8_t &priority, OperationCountingType &value) const =0
 Wrapper for [Raw]{Fifo,Message}Queue::tryPopFor() More...
 
virtual int tryPopUntil (TickClock::time_point timePoint, uint8_t &priority, OperationCountingType &value) const =0
 Wrapper for [Raw]{Fifo,Message}Queue::tryPopUntil() More...
 
virtual int tryPush (uint8_t priority, const OperationCountingType &value) const =0
 Wrapper for {Fifo,Message}Queue::tryPush(..., const OperationCountingType&) or Raw{Fifo,Message}Queue::tryPush() More...
 
virtual int tryPush (uint8_t priority, OperationCountingType &&value) const =0
 Wrapper for {Fifo,Message}Queue::tryPush(..., OperationCountingType&&) or Raw{Fifo,Message}Queue::tryPush() More...
 
virtual int tryPushFor (TickClock::duration duration, uint8_t priority, const OperationCountingType &value) const =0
 Wrapper for {Fifo,Message}Queue::tryPushFor(..., const OperationCountingType&) or Raw{Fifo,Message}Queue::tryPushFor() More...
 
virtual int tryPushFor (TickClock::duration duration, uint8_t priority, OperationCountingType &&value) const =0
 Wrapper for {Fifo,Message}Queue::tryPushFor(..., OperationCountingType&&) or Raw{Fifo,Message}Queue::tryPushFor() More...
 
virtual int tryPushUntil (TickClock::time_point timePoint, uint8_t priority, const OperationCountingType &value) const =0
 Wrapper for {Fifo,Message}Queue::tryPushUntil(..., const OperationCountingType&) or Raw{Fifo,Message}Queue::tryPushUntil() More...
 
virtual int tryPushUntil (TickClock::time_point timePoint, uint8_t priority, OperationCountingType &&value) const =0
 Wrapper for {Fifo,Message}Queue::tryPushUntil(..., OperationCountingType&&) or Raw{Fifo,Message}Queue::tryPushUntil() More...
 

Detailed Description

wrapper for [Raw]{Fifo,Message}Queue

Constructor & Destructor Documentation

◆ ~QueueWrapper()

distortos::test::QueueWrapper::~QueueWrapper ( )
pure virtual

QueueWrapper's destructor.

Member Function Documentation

◆ check()

virtual bool distortos::test::QueueWrapper::check ( uint8_t  priority1,
const OperationCountingType value1,
uint8_t  priority2,
const OperationCountingType value2 
) const
pure virtual

Tests whether pushed and popped data match.

Parameters
[in]priority1is the priority used for push() or emplace()
[in]value1is a reference to OperationCountingType object used for push() or emplace()
[in]priority2is the priority returned by pop()
[in]value2is a reference to OperationCountingType object returned by pop()
Returns
true if pushed and popped data matches, false otherwise

Implemented in distortos::test::RawMessageQueueWrapper, distortos::test::RawFifoQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ checkCounters()

virtual bool distortos::test::QueueWrapper::checkCounters ( size_t  constructed,
size_t  copyConstructed,
size_t  moveConstructed,
size_t  destructed,
size_t  copyAssigned,
size_t  moveAssigned,
size_t  swapped 
) const
pure virtual

Wrapper for OperationCountingType::checkCounters().

If the wrapped queue is a "raw" queue, then this function should be a stub which returns true, otherwise it should just call OperationCountingType::checkCounters().

Implemented in distortos::test::RawQueueWrapper, and distortos::test::NonRawQueueWrapper.

Here is the caller graph for this function:

◆ emplace()

virtual int distortos::test::QueueWrapper::emplace ( uint8_t  priority,
OperationCountingType::Value  value = {} 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::emplace() or Raw{Fifo,Message}Queue::push()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ pop()

virtual int distortos::test::QueueWrapper::pop ( uint8_t &  priority,
OperationCountingType value 
) const
pure virtual

Wrapper for [Raw]{Fifo,Message}Queue::pop()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ push() [1/2]

virtual int distortos::test::QueueWrapper::push ( uint8_t  priority,
const OperationCountingType value 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::push(..., const OperationCountingType&) or Raw{Fifo,Message}Queue::push()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ push() [2/2]

virtual int distortos::test::QueueWrapper::push ( uint8_t  priority,
OperationCountingType &&  value 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::push(..., OperationCountingType&&) or Raw{Fifo,Message}Queue::push()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

◆ tryEmplace()

virtual int distortos::test::QueueWrapper::tryEmplace ( uint8_t  priority,
OperationCountingType::Value  value = {} 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryEmplace() or Raw{Fifo,Message}Queue::tryPush()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryEmplaceFor()

virtual int distortos::test::QueueWrapper::tryEmplaceFor ( TickClock::duration  duration,
uint8_t  priority,
OperationCountingType::Value  value = {} 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryEmplaceFor() or Raw{Fifo,Message}Queue::tryPushFor()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryEmplaceUntil()

virtual int distortos::test::QueueWrapper::tryEmplaceUntil ( TickClock::time_point  timePoint,
uint8_t  priority,
OperationCountingType::Value  value = {} 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryEmplaceUntil() or Raw{Fifo,Message}Queue::tryPushUntil()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryPop()

virtual int distortos::test::QueueWrapper::tryPop ( uint8_t &  priority,
OperationCountingType value 
) const
pure virtual

Wrapper for [Raw]{Fifo,Message}Queue::tryPop()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryPopFor()

virtual int distortos::test::QueueWrapper::tryPopFor ( TickClock::duration  duration,
uint8_t &  priority,
OperationCountingType value 
) const
pure virtual

Wrapper for [Raw]{Fifo,Message}Queue::tryPopFor()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryPopUntil()

virtual int distortos::test::QueueWrapper::tryPopUntil ( TickClock::time_point  timePoint,
uint8_t &  priority,
OperationCountingType value 
) const
pure virtual

Wrapper for [Raw]{Fifo,Message}Queue::tryPopUntil()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryPush() [1/2]

virtual int distortos::test::QueueWrapper::tryPush ( uint8_t  priority,
const OperationCountingType value 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryPush(..., const OperationCountingType&) or Raw{Fifo,Message}Queue::tryPush()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryPush() [2/2]

virtual int distortos::test::QueueWrapper::tryPush ( uint8_t  priority,
OperationCountingType &&  value 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryPush(..., OperationCountingType&&) or Raw{Fifo,Message}Queue::tryPush()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

◆ tryPushFor() [1/2]

virtual int distortos::test::QueueWrapper::tryPushFor ( TickClock::duration  duration,
uint8_t  priority,
const OperationCountingType value 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryPushFor(..., const OperationCountingType&) or Raw{Fifo,Message}Queue::tryPushFor()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryPushFor() [2/2]

virtual int distortos::test::QueueWrapper::tryPushFor ( TickClock::duration  duration,
uint8_t  priority,
OperationCountingType &&  value 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryPushFor(..., OperationCountingType&&) or Raw{Fifo,Message}Queue::tryPushFor()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

◆ tryPushUntil() [1/2]

virtual int distortos::test::QueueWrapper::tryPushUntil ( TickClock::time_point  timePoint,
uint8_t  priority,
const OperationCountingType value 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryPushUntil(..., const OperationCountingType&) or Raw{Fifo,Message}Queue::tryPushUntil()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.

Here is the caller graph for this function:

◆ tryPushUntil() [2/2]

virtual int distortos::test::QueueWrapper::tryPushUntil ( TickClock::time_point  timePoint,
uint8_t  priority,
OperationCountingType &&  value 
) const
pure virtual

Wrapper for {Fifo,Message}Queue::tryPushUntil(..., OperationCountingType&&) or Raw{Fifo,Message}Queue::tryPushUntil()

Implemented in distortos::test::RawQueueWrapper, distortos::test::MessageQueueWrapper, and distortos::test::FifoQueueWrapper.


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