distortos  v0.7.0
object-oriented C++ RTOS for microcontrollers
SoftwareTimerListNode.hpp
Go to the documentation of this file.
1 
12 #ifndef INCLUDE_DISTORTOS_INTERNAL_SCHEDULER_SOFTWARETIMERLISTNODE_HPP_
13 #define INCLUDE_DISTORTOS_INTERNAL_SCHEDULER_SOFTWARETIMERLISTNODE_HPP_
14 
15 #include "distortos/TickClock.hpp"
16 
17 #include "estd/IntrusiveList.hpp"
18 
19 namespace distortos
20 {
21 
22 namespace internal
23 {
24 
33 {
34 public:
35 
40  constexpr SoftwareTimerListNode() :
41  node{},
42  timePoint_{}
43  {
44 
45  }
46 
52  {
53  return timePoint_;
54  }
55 
58 
59 protected:
60 
67  void setTimePoint(const TickClock::time_point timePoint)
68  {
69  timePoint_ = timePoint;
70  }
71 
72 private:
73 
76 };
77 
78 } // namespace internal
79 
80 } // namespace distortos
81 
82 #endif // INCLUDE_DISTORTOS_INTERNAL_SCHEDULER_SOFTWARETIMERLISTNODE_HPP_
void setTimePoint(const TickClock::time_point timePoint)
Sets time point of expiration.
Definition: SoftwareTimerListNode.hpp:67
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
constexpr SoftwareTimerListNode()
SoftwareTimerListNode's constructor.
Definition: SoftwareTimerListNode.hpp:40
TickClock::time_point timePoint_
time point of expiration
Definition: SoftwareTimerListNode.hpp:75
IntrusiveListNode class is the node that is needed for the object to be linked in IntrusiveList.
Definition: IntrusiveList.hpp:38
std::chrono::time_point< TickClock > time_point
basic time_point type of clock
Definition: TickClock.hpp:42
TickClock class header.
Top-level namespace of distortos project.
Definition: buttons.hpp:33
estd::IntrusiveListNode node
node for intrusive list
Definition: SoftwareTimerListNode.hpp:57
IntrusiveList template class header.