distortos  v0.4.0
object-oriented C++ RTOS for microcontrollers
QueueWrappers.hpp
Go to the documentation of this file.
1 
12 #ifndef TEST_QUEUE_QUEUEWRAPPERS_HPP_
13 #define TEST_QUEUE_QUEUEWRAPPERS_HPP_
14 
16 
25 
27 #define DISTORTOS_QUEUE_EMPLACE_SUPPORTED (DISTORTOS_FIFOQUEUE_EMPLACE_SUPPORTED && \
28  DISTORTOS_MESSAGEQUEUE_EMPLACE_SUPPORTED)
29 
30 namespace distortos
31 {
32 
33 namespace test
34 {
35 
38 {
39 public:
40 
45  virtual ~QueueWrapper() = 0;
46 
58  virtual bool check(uint8_t priority1, const OperationCountingType& value1, uint8_t priority2,
59  const OperationCountingType& value2) const = 0;
60 
68  virtual bool checkCounters(size_t constructed, size_t copyConstructed, size_t moveConstructed, size_t destructed,
69  size_t copyAssigned, size_t moveAssigned, size_t swapped) const = 0;
70 
71 #if DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
72 
77  virtual int emplace(uint8_t priority, OperationCountingType::Value value = {}) const = 0;
78 
79 #endif // DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
80 
85  virtual int pop(uint8_t& priority, OperationCountingType& value) const = 0;
86 
91  virtual int push(uint8_t priority, const OperationCountingType& value) const = 0;
92 
97  virtual int push(uint8_t priority, OperationCountingType&& value) const = 0;
98 
99 #if DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
100 
105  virtual int tryEmplace(uint8_t priority, OperationCountingType::Value value = {}) const = 0;
106 
111  virtual int tryEmplaceFor(TickClock::duration duration, uint8_t priority, OperationCountingType::Value value = {})
112  const = 0;
113 
118  virtual int tryEmplaceUntil(TickClock::time_point timePoint, uint8_t priority,
119  OperationCountingType::Value value = {}) const = 0;
120 
121 #endif // DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
122 
127  virtual int tryPop(uint8_t& priority, OperationCountingType& value) const = 0;
128 
133  virtual int tryPopFor(TickClock::duration duration, uint8_t& priority, OperationCountingType& value) const = 0;
134 
139  virtual int tryPopUntil(TickClock::time_point timePoint, uint8_t& priority, OperationCountingType& value) const = 0;
140 
146  virtual int tryPush(uint8_t priority, const OperationCountingType& value) const = 0;
147 
153  virtual int tryPush(uint8_t priority, OperationCountingType&& value) const = 0;
154 
160  virtual int tryPushFor(TickClock::duration duration, uint8_t priority, const OperationCountingType& value) const =
161  0;
162 
168  virtual int tryPushFor(TickClock::duration duration, uint8_t priority, OperationCountingType&& value) const = 0;
169 
175  virtual int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, const OperationCountingType& value)
176  const = 0;
177 
183  virtual int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, OperationCountingType&& value) const =
184  0;
185 };
186 
188 using QueueWrapperUniquePointer = std::unique_ptr<QueueWrapper>;
189 
192 {
193 public:
194 
201  bool checkCounters(size_t constructed, size_t copyConstructed, size_t moveConstructed, size_t destructed,
202  size_t copyAssigned, size_t moveAssigned, size_t swapped) const override;
203 };
204 
207 {
208 public:
209 
212 
219  constexpr explicit FifoQueueWrapper(TestFifoQueue& fifoQueue) :
220  fifoQueue_{fifoQueue}
221  {
222 
223  }
224 
238  bool check(uint8_t priority1, const OperationCountingType& value1, uint8_t priority2,
239  const OperationCountingType& value2) const override;
240 
241 #if DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
242 
247  int emplace(uint8_t priority, OperationCountingType::Value value = {}) const override;
248 
249 #endif // DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
250 
255  int pop(uint8_t& priority, OperationCountingType& value) const override;
256 
261  int push(uint8_t priority, const OperationCountingType& value) const override;
262 
267  int push(uint8_t priority, OperationCountingType&& value) const override;
268 
269 #if DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
270 
275  int tryEmplace(uint8_t priority, OperationCountingType::Value value = {}) const override;
276 
281  int tryEmplaceFor(TickClock::duration duration, uint8_t priority, OperationCountingType::Value value = {}) const
282  override;
283 
288  int tryEmplaceUntil(TickClock::time_point timePoint, uint8_t priority, OperationCountingType::Value value = {})
289  const override;
290 
291 #endif // DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
292 
297  int tryPop(uint8_t& priority, OperationCountingType& value) const override;
298 
303  int tryPopFor(TickClock::duration duration, uint8_t& priority, OperationCountingType& value) const override;
304 
309  int tryPopUntil(TickClock::time_point timePoint, uint8_t& priority, OperationCountingType& value) const override;
310 
315  int tryPush(uint8_t priority, const OperationCountingType& value) const override;
316 
321  int tryPush(uint8_t priority, OperationCountingType&& value) const override;
322 
327  int tryPushFor(TickClock::duration duration, uint8_t priority, const OperationCountingType& value) const override;
328 
333  int tryPushFor(TickClock::duration duration, uint8_t priority, OperationCountingType&& value) const override;
334 
339  int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, const OperationCountingType& value) const
340  override;
341 
346  int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, OperationCountingType&& value) const override;
347 
348 private:
349 
352 };
353 
359 {
360 public:
361 
364 
371  explicit DynamicFifoQueueWrapper(size_t queueSize);
372 
373 private:
374 
377 };
378 
385 template<size_t QueueSize>
387 {
388 public:
389 
392 
398  FifoQueueWrapper{fifoQueue_}
399  {
400 
401  }
402 
403 private:
404 
407 };
408 
411 {
412 public:
413 
416 
423  constexpr explicit MessageQueueWrapper(TestMessageQueue& messageQueue) :
424  messageQueue_{messageQueue}
425  {
426 
427  }
428 
440  bool check(uint8_t priority1, const OperationCountingType& value1, uint8_t priority2,
441  const OperationCountingType& value2) const override;
442 
443 #if DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
444 
449  int emplace(uint8_t priority, OperationCountingType::Value value = {}) const override;
450 
451 #endif // DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
452 
457  int pop(uint8_t& priority, OperationCountingType& value) const override;
458 
463  int push(uint8_t priority, const OperationCountingType& value) const override;
464 
469  int push(uint8_t priority, OperationCountingType&& value) const override;
470 
471 #if DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
472 
477  int tryEmplace(uint8_t priority, OperationCountingType::Value value = {}) const override;
478 
483  int tryEmplaceFor(TickClock::duration duration, uint8_t priority, OperationCountingType::Value value = {}) const
484  override;
485 
490  int tryEmplaceUntil(TickClock::time_point timePoint, uint8_t priority, OperationCountingType::Value value = {})
491  const override;
492 
493 #endif // DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
494 
499  int tryPop(uint8_t& priority, OperationCountingType& value) const override;
500 
505  int tryPopFor(TickClock::duration duration, uint8_t& priority, OperationCountingType& value) const override;
506 
511  int tryPopUntil(TickClock::time_point timePoint, uint8_t& priority, OperationCountingType& value) const override;
512 
517  int tryPush(uint8_t priority, const OperationCountingType& value) const override;
518 
523  int tryPush(uint8_t priority, OperationCountingType&& value) const override;
524 
529  int tryPushFor(TickClock::duration duration, uint8_t priority, const OperationCountingType& value) const override;
530 
535  int tryPushFor(TickClock::duration duration, uint8_t priority, OperationCountingType&& value) const override;
536 
541  int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, const OperationCountingType& value) const
542  override;
543 
548  int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, OperationCountingType&& value) const override;
549 
550 private:
551 
554 };
555 
562 {
563 public:
564 
567 
574  explicit DynamicMessageQueueWrapper(size_t queueSize);
575 
576 private:
577 
580 };
581 
589 template<size_t QueueSize>
591 {
592 public:
593 
596 
602  MessageQueueWrapper{messageQueue_}
603  {
604 
605  }
606 
607 private:
608 
611 };
612 
615 {
616 public:
617 
624  bool checkCounters(size_t constructed, size_t copyConstructed, size_t moveConstructed, size_t destructed,
625  size_t copyAssigned, size_t moveAssigned, size_t swapped) const override;
626 
627 #if DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
628 
633  int emplace(uint8_t priority, OperationCountingType::Value value = {}) const final override;
634 
635 #endif // DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
636 
641  virtual int pop(uint8_t& priority, void* buffer, size_t size) const = 0;
642 
647  int pop(uint8_t& priority, OperationCountingType& value) const final override;
648 
653  virtual int push(uint8_t priority, const void* data, size_t size) const = 0;
654 
659  int push(uint8_t priority, const OperationCountingType& value) const final override;
660 
665  int push(uint8_t priority, OperationCountingType&& value) const final override;
666 
667 #if DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
668 
673  int tryEmplace(uint8_t priority, OperationCountingType::Value value = {}) const final override;
674 
679  int tryEmplaceFor(TickClock::duration duration, uint8_t priority, OperationCountingType::Value value = {}) const
680  final override;
681 
686  int tryEmplaceUntil(TickClock::time_point timePoint, uint8_t priority, OperationCountingType::Value value = {})
687  const final override;
688 
689 #endif // DISTORTOS_QUEUE_EMPLACE_SUPPORTED == 1
690 
695  virtual int tryPop(uint8_t& priority, void* buffer, size_t size) const = 0;
696 
701  int tryPop(uint8_t& priority, OperationCountingType& value) const final override;
702 
707  virtual int tryPopFor(TickClock::duration duration, uint8_t& priority, void* buffer, size_t size) const = 0;
708 
713  int tryPopFor(TickClock::duration duration, uint8_t& priority, OperationCountingType& value) const final override;
714 
719  virtual int tryPopUntil(TickClock::time_point timePoint, uint8_t& priority, void* buffer, size_t size) const = 0;
720 
725  int tryPopUntil(TickClock::time_point timePoint, uint8_t& priority, OperationCountingType& value) const final
726  override;
727 
732  virtual int tryPush(uint8_t priority, const void* data, size_t size) const = 0;
733 
738  int tryPush(uint8_t priority, const OperationCountingType& value) const final override;
739 
744  int tryPush(uint8_t priority, OperationCountingType&& value) const final override;
745 
750  virtual int tryPushFor(TickClock::duration duration, uint8_t priority, const void* data, size_t size) const = 0;
751 
756  int tryPushFor(TickClock::duration duration, uint8_t priority, const OperationCountingType& value) const final
757  override;
758 
763  int tryPushFor(TickClock::duration duration, uint8_t priority, OperationCountingType&& value) const final override;
764 
769  virtual int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, const void* data, size_t size) const =
770  0;
771 
776  int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, const OperationCountingType& value) const final
777  override;
778 
783  int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, OperationCountingType&& value) const final
784  override;
785 };
786 
788 using RawQueueWrapperUniquePointer = std::unique_ptr<RawQueueWrapper>;
789 
792 {
793 public:
794 
801  constexpr explicit RawFifoQueueWrapper(RawFifoQueue& rawFifoQueue) :
802  rawFifoQueue_{rawFifoQueue}
803  {
804 
805  }
806 
820  bool check(uint8_t priority1, const OperationCountingType& value1, uint8_t priority2,
821  const OperationCountingType& value2) const override;
822 
827  int pop(uint8_t& priority, void* buffer, size_t size) const override;
828 
833  int push(uint8_t priority, const void* data, size_t size) const override;
834 
839  int tryPop(uint8_t& priority, void* buffer, size_t size) const override;
840 
845  int tryPopFor(TickClock::duration duration, uint8_t& priority, void* buffer, size_t size) const override;
846 
851  int tryPopUntil(TickClock::time_point timePoint, uint8_t& priority, void* buffer, size_t size) const override;
852 
857  int tryPush(uint8_t priority, const void* data, size_t size) const override;
858 
863  int tryPushFor(TickClock::duration duration, uint8_t priority, const void* data, size_t size) const override;
864 
869  int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, const void* data, size_t size) const override;
870 
871 private:
872 
875 };
876 
883 {
884 public:
885 
892  explicit DynamicRawFifoQueueWrapper(size_t queueSize);
893 
894 private:
895 
898 };
899 
907 template<size_t QueueSize>
909 {
910 public:
911 
914 
920  RawFifoQueueWrapper{rawFifoQueue_}
921  {
922 
923  }
924 
925 private:
926 
929 };
930 
933 {
934 public:
935 
942  constexpr explicit RawMessageQueueWrapper(RawMessageQueue& rawMessageQueue) :
943  rawMessageQueue_{rawMessageQueue}
944  {
945 
946  }
947 
959  bool check(uint8_t priority1, const OperationCountingType& value1, uint8_t priority2,
960  const OperationCountingType& value2) const override;
961 
966  int pop(uint8_t& priority, void* buffer, size_t size) const override;
967 
972  int push(uint8_t priority, const void* data, size_t size) const override;
973 
978  int tryPop(uint8_t& priority, void* buffer, size_t size) const override;
979 
984  int tryPopFor(TickClock::duration duration, uint8_t& priority, void* buffer, size_t size) const override;
985 
990  int tryPopUntil(TickClock::time_point timePoint, uint8_t& priority, void* buffer, size_t size) const override;
991 
996  int tryPush(uint8_t priority, const void* data, size_t size) const override;
997 
1002  int tryPushFor(TickClock::duration duration, uint8_t priority, const void* data, size_t size) const override;
1003 
1008  int tryPushUntil(TickClock::time_point timePoint, uint8_t priority, const void* data, size_t size) const override;
1009 
1010 private:
1011 
1014 };
1015 
1022 {
1023 public:
1024 
1031  explicit DynamicRawMessageQueueWrapper(size_t queueSize);
1032 
1033 private:
1034 
1037 };
1038 
1046 template<size_t QueueSize>
1048 {
1049 public:
1050 
1053 
1059  RawMessageQueueWrapper{rawMessageQueue_}
1060  {
1061 
1062  }
1063 
1064 private:
1065 
1068 };
1069 
1081 template<size_t QueueSize>
1082 RawQueueWrapperUniquePointer makeRawQueueWrapper(const bool dynamic, const bool fifo)
1083 {
1084  if (dynamic == false)
1085  {
1086  if (fifo == false)
1088  else // if (fifo != false)
1090  }
1091  else // if (dynamic != false)
1092  {
1093  if (fifo == false)
1095  else // if (fifo != false)
1097  }
1098 }
1099 
1112 template<size_t QueueSize>
1113 QueueWrapperUniquePointer makeQueueWrapper(const bool dynamic, const bool raw, const bool fifo)
1114 {
1115  if (raw == true)
1116  return makeRawQueueWrapper<QueueSize>(dynamic, fifo);
1117 
1118  if (dynamic == false)
1119  {
1120  if (fifo == false)
1122  else // if (fifo != false)
1124  }
1125  else // if (dynamic != false)
1126  {
1127  if (fifo == false)
1128  return QueueWrapperUniquePointer {new DynamicMessageQueueWrapper {QueueSize}};
1129  else // if (fifo != false)
1130  return QueueWrapperUniquePointer {new DynamicFifoQueueWrapper {QueueSize}};
1131  }
1132 }
1133 
1134 } // namespace test
1135 
1136 } // namespace distortos
1137 
1138 #endif // TEST_QUEUE_QUEUEWRAPPERS_HPP_
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()
implementation of RawQueueWrapper for RawMessageQueue
Definition: QueueWrappers.hpp:932
virtual int tryEmplace(uint8_t priority, OperationCountingType::Value value={}) const =0
Wrapper for {Fifo,Message}Queue::tryEmplace() or Raw{Fifo,Message}Queue::tryPush() ...
TestMessageQueue & messageQueue_
reference to wrapped TestMessageQueue object
Definition: QueueWrappers.hpp:553
virtual bool check(uint8_t priority1, const OperationCountingType &value1, uint8_t priority2, const OperationCountingType &value2) const =0
Tests whether pushed and popped data match.
RawMessageQueue class is very similar to MessageQueue, but optimized for binary serializable types (l...
Definition: RawMessageQueue.hpp:33
StaticRawMessageQueueWrapper()
StaticMessageQueueWrapper&#39;s constructor.
Definition: QueueWrappers.hpp:1058
virtual int tryPopUntil(TickClock::time_point timePoint, uint8_t &priority, OperationCountingType &value) const =0
Wrapper for [Raw]{Fifo,Message}Queue::tryPopUntil()
TestStaticRawFifoQueue rawFifoQueue_
internal TestStaticRawFifoQueue object that will be wrapped
Definition: QueueWrappers.hpp:928
StaticFifoQueueWrapper class is a variant of FifoQueueWrapper that has automatic storage for queue&#39;s ...
Definition: QueueWrappers.hpp:386
OperationCountingType class header.
DynamicRawFifoQueue class header.
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().
DynamicFifoQueue class header.
StaticFifoQueue class header.
implementation of RawQueueWrapper for RawFifoQueue
Definition: QueueWrappers.hpp:791
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() ...
virtual int emplace(uint8_t priority, OperationCountingType::Value value={}) const =0
Wrapper for {Fifo,Message}Queue::emplace() or Raw{Fifo,Message}Queue::push()
RawFifoQueue class is very similar to FifoQueue, but optimized for binary serializable types (like PO...
Definition: RawFifoQueue.hpp:30
Definition: OperationCountingType.hpp:27
std::unique_ptr< QueueWrapper > QueueWrapperUniquePointer
unique_ptr with QueueWrapper
Definition: QueueWrappers.hpp:188
DynamicRawMessageQueue class is a variant of RawMessageQueue that has dynamic storage for queue&#39;s con...
Definition: DynamicRawMessageQueue.hpp:26
DynamicRawFifoQueue rawFifoQueue_
internal DynamicRawFifoQueue object that will be wrapped
Definition: QueueWrappers.hpp:897
DynamicRawMessageQueue rawMessageQueue_
internal DynamicRawMessageQueue object that will be wrapped
Definition: QueueWrappers.hpp:1036
RawQueueWrapperUniquePointer makeRawQueueWrapper(const bool dynamic, const bool fifo)
RawQueueWrapper&#39;s factory function.
Definition: QueueWrappers.hpp:1082
TestStaticRawMessageQueue rawMessageQueue_
internal TestStaticRawMessageQueue object that will be wrapped
Definition: QueueWrappers.hpp:1067
virtual int pop(uint8_t &priority, OperationCountingType &value) const =0
Wrapper for [Raw]{Fifo,Message}Queue::pop()
std::chrono::time_point< TickClock > time_point
basic time_point type of clock
Definition: TickClock.hpp:42
TestDynamicMessageQueue messageQueue_
internal TestDynamicMessageQueue object that will be wrapped
Definition: QueueWrappers.hpp:579
implementation of QueueWrapper for MessageQueue
Definition: QueueWrappers.hpp:410
DynamicRawMessageQueueWrapper class is a variant of RawMessageQueueWrapper that has dynamic storage f...
Definition: QueueWrappers.hpp:1021
implementation of QueueWrapper for FifoQueue
Definition: QueueWrappers.hpp:206
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() ...
wrapper for [Raw]{Fifo,Message}Queue
Definition: QueueWrappers.hpp:37
StaticRawMessageQueue class header.
TestStaticMessageQueue messageQueue_
internal TestStaticMessageQueue object that will be wrapped
Definition: QueueWrappers.hpp:610
DynamicRawFifoQueue class is a variant of RawFifoQueue that has dynamic storage for queue&#39;s contents...
Definition: DynamicRawFifoQueue.hpp:26
Top-level namespace of distortos project.
DynamicFifoQueueWrapper class is a variant of FifoQueueWrapper that has dynamic storage for queue&#39;s c...
Definition: QueueWrappers.hpp:358
StaticFifoQueueWrapper()
StaticFifoQueueWrapper&#39;s constructor.
Definition: QueueWrappers.hpp:397
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...
constexpr RawMessageQueueWrapper(RawMessageQueue &rawMessageQueue)
RawMessageQueueWrapper&#39;s constructor.
Definition: QueueWrappers.hpp:942
constexpr FifoQueueWrapper(TestFifoQueue &fifoQueue)
FifoQueueWrapper&#39;s constructor.
Definition: QueueWrappers.hpp:219
virtual ~QueueWrapper()=0
QueueWrapper&#39;s destructor.
Definition: QueueWrappers.cpp:24
StaticMessageQueue class header.
DynamicRawFifoQueueWrapper class is a variant of RawFifoQueueWrapper that has dynamic storage for que...
Definition: QueueWrappers.hpp:882
QueueWrapperUniquePointer makeQueueWrapper(const bool dynamic, const bool raw, const bool fifo)
QueueWrapper&#39;s factory function.
Definition: QueueWrappers.hpp:1113
std::chrono::duration< rep, period > duration
basic duration type of clock
Definition: TickClock.hpp:39
StaticRawFifoQueueWrapper()
StaticFifoQueueWrapper&#39;s constructor.
Definition: QueueWrappers.hpp:919
StaticMessageQueueWrapper()
StaticMessageQueueWrapper&#39;s constructor.
Definition: QueueWrappers.hpp:601
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()
constexpr RawFifoQueueWrapper(RawFifoQueue &rawFifoQueue)
RawFifoQueueWrapper&#39;s constructor.
Definition: QueueWrappers.hpp:801
RawFifoQueue & rawFifoQueue_
reference to wrapped RawFifoQueue object
Definition: QueueWrappers.hpp:874
common implementation of QueueWrapper for {Fifo,Message}Queue
Definition: QueueWrappers.hpp:191
common implementation of QueueWrapper for Raw{Fifo,Message}Queue
Definition: QueueWrappers.hpp:614
StaticMessageQueueWrapper class is a variant of MessageQueueWrapper that has automatic storage for qu...
Definition: QueueWrappers.hpp:590
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...
DynamicRawMessageQueue class header.
TestFifoQueue & fifoQueue_
reference to wrapped TestFifoQueue object
Definition: QueueWrappers.hpp:351
RawMessageQueue & rawMessageQueue_
reference to wrapped RawMessageQueue object
Definition: QueueWrappers.hpp:1013
StaticRawFifoQueueWrapper class is a variant of RawFifoQueueWrapper that has automatic storage for qu...
Definition: QueueWrappers.hpp:908
StaticRawFifoQueue class header.
virtual int tryPopFor(TickClock::duration duration, uint8_t &priority, OperationCountingType &value) const =0
Wrapper for [Raw]{Fifo,Message}Queue::tryPopFor()
TestStaticFifoQueue fifoQueue_
internal TestStaticFifoQueue object that will be wrapped
Definition: QueueWrappers.hpp:406
DynamicMessageQueue class header.
DynamicMessageQueueWrapper class is a variant of MessageQueueWrapper that has dynamic storage for que...
Definition: QueueWrappers.hpp:561
constexpr MessageQueueWrapper(TestMessageQueue &messageQueue)
MessageQueueWrapper&#39;s constructor.
Definition: QueueWrappers.hpp:423
std::unique_ptr< RawQueueWrapper > RawQueueWrapperUniquePointer
unique_ptr with RawQueueWrapper
Definition: QueueWrappers.hpp:788
TestDynamicFifoQueue fifoQueue_
internal TestDynamicFifoQueue object that will be wrapped
Definition: QueueWrappers.hpp:376
StaticRawMessageQueueWrapper class is a variant of RawMessageQueueWrapper that has automatic storage ...
Definition: QueueWrappers.hpp:1047
virtual int tryPop(uint8_t &priority, OperationCountingType &value) const =0
Wrapper for [Raw]{Fifo,Message}Queue::tryPop()
unsigned int Value
type used for OperationCountingType&#39;s "value"
Definition: OperationCountingType.hpp:32