distortos  v0.7.0
object-oriented C++ RTOS for microcontrollers
SoftwareTimerList.hpp
Go to the documentation of this file.
1 
12 #ifndef INCLUDE_DISTORTOS_INTERNAL_SCHEDULER_SOFTWARETIMERLIST_HPP_
13 #define INCLUDE_DISTORTOS_INTERNAL_SCHEDULER_SOFTWARETIMERLIST_HPP_
14 
16 
18 
19 namespace distortos
20 {
21 
22 namespace internal
23 {
24 
25 class SoftwareTimerControlBlock;
26 
29 {
35  {
36 
37  }
38 
48  bool operator()(const SoftwareTimerListNode& left, const SoftwareTimerListNode& right) const
49  {
50  return left.getTimePoint() > right.getTimePoint();
51  }
52 };
53 
55 using SoftwareTimerList = estd::SortedIntrusiveList<SoftwareTimerAscendingTimePoint, SoftwareTimerListNode,
57 
58 } // namespace internal
59 
60 } // namespace distortos
61 
62 #endif // INCLUDE_DISTORTOS_INTERNAL_SCHEDULER_SOFTWARETIMERLIST_HPP_
const TickClock::time_point & getTimePoint() const
Definition: SoftwareTimerListNode.hpp:51
SoftwareTimerListNode class is a base for SoftwareTimerControlBlock that serves as a node in intrusiv...
Definition: SoftwareTimerListNode.hpp:32
functor which gives ascending expiration time point order of elements on the list
Definition: SoftwareTimerList.hpp:28
SoftwareTimerListNode class header.
SortedIntrusiveList class is an IntrusiveList with sorted elements.
Definition: SortedIntrusiveList.hpp:40
Top-level namespace of distortos project.
Definition: buttons.hpp:33
estd::IntrusiveListNode node
node for intrusive list
Definition: SoftwareTimerListNode.hpp:57
SortedIntrusiveList template class header.
estd::SortedIntrusiveList< SoftwareTimerAscendingTimePoint, SoftwareTimerListNode, &SoftwareTimerListNode::node, SoftwareTimerControlBlock > SoftwareTimerList
sorted intrusive list of software timers (software timer control blocks)
Definition: SoftwareTimerList.hpp:56
constexpr SoftwareTimerAscendingTimePoint()
SoftwareTimerAscendingTimePoint's constructor.
Definition: SoftwareTimerList.hpp:34
bool operator()(const SoftwareTimerListNode &left, const SoftwareTimerListNode &right) const
SoftwareTimerAscendingTimePoint's function call operator.
Definition: SoftwareTimerList.hpp:48
SoftwareTimerControlBlock class is a control block of software timer.
Definition: SoftwareTimerControlBlock.hpp:28