µOS++ IIIe Reference 7.0.0
The third edition of µOS++, a POSIX inspired open source framework, written in C++
Loading...
Searching...
No Matches
os::rtos::internal::timeout_thread_node Class Reference

Double linked list node, with time stamp and thread. More...

#include <os-lists.h>

+ Inheritance diagram for os::rtos::internal::timeout_thread_node:

Public Member Functions

Constructors & Destructor
 timeout_thread_node (port::clock::timestamp_t ts, thread &th)
 Construct a clock timeout node.
 
virtual ~timeout_thread_node () override
 Destruct the node.
 
Public Member Functions
virtual void action (void) override
 Action to perform when the time stamp is reached.
 
Public Member Functions
void unlink (void)
 Remove the node from the list.
 
bool unlinked (void)
 Check if the node is unlinked.
 
static_double_list_linksnext (void) const
 
void next (static_double_list_links *n)
 
static_double_list_linksprev (void) const
 
void prev (static_double_list_links *n)
 

Public Attributes

Public Member Variables
rtos::threadthread
 Reference to thread who initiated the timeout.
 
Public Member Variables
port::clock::timestamp_t timestamp
 Time stamp when the next action will be performed.
 

Protected Attributes

Private Member Variables
static_double_list_linksprev_
 Pointer to previous node.
 
static_double_list_linksnext_
 Pointer to next node.
 

Detailed Description

Double linked list node, with time stamp and thread.

Definition at line 226 of file os-lists.h.

Constructor & Destructor Documentation

◆ timeout_thread_node()

os::rtos::internal::timeout_thread_node::timeout_thread_node ( port::clock::timestamp_t  ts,
rtos::thread th 
)

Construct a clock timeout node.

Parameters
[in]tsTime stamp.
[in]thReference to thread.

Definition at line 309 of file os-lists.cpp.

◆ ~timeout_thread_node()

os::rtos::internal::timeout_thread_node::~timeout_thread_node ( )
overridevirtual

Destruct the node.

Definition at line 320 of file os-lists.cpp.

Member Function Documentation

◆ action()

void os::rtos::internal::timeout_thread_node::action ( void  )
overridevirtual

Action to perform when the time stamp is reached.

Parameters
None.
Returns
Nothing.

Implements os::rtos::internal::timestamp_node.

Definition at line 329 of file os-lists.cpp.

◆ next() [1/2]

void os::utils::static_double_list_links::next ( static_double_list_links n)
inlineinherited

Definition at line 882 of file lists.h.

◆ next() [2/2]

static_double_list_links * os::utils::static_double_list_links::next ( void  ) const
inlineinherited

Definition at line 870 of file lists.h.

◆ prev() [1/2]

void os::utils::static_double_list_links::prev ( static_double_list_links n)
inlineinherited

Definition at line 888 of file lists.h.

◆ prev() [2/2]

static_double_list_links * os::utils::static_double_list_links::prev ( void  ) const
inlineinherited

Definition at line 876 of file lists.h.

◆ unlink()

void os::utils::static_double_list_links::unlink ( void  )
inherited

Remove the node from the list.

Returns
Nothing.

Update the neighbours to point to each other, skipping the node.

For more robustness, to prevent unexpected accesses, the links in the removed node are nullified.

Definition at line 68 of file lists.cpp.

◆ unlinked()

bool os::utils::static_double_list_links::unlinked ( void  )
inlineinherited

Check if the node is unlinked.

Return values
trueThe node is not linked.
falseThe node is linked to a list.

Definition at line 864 of file lists.h.

Member Data Documentation

◆ next_

static_double_list_links* os::utils::static_double_list_links::next_
protectedinherited

Pointer to next node.

Definition at line 154 of file lists.h.

◆ prev_

static_double_list_links* os::utils::static_double_list_links::prev_
protectedinherited

Pointer to previous node.

Definition at line 149 of file lists.h.

◆ thread

rtos::thread& os::rtos::internal::timeout_thread_node::thread

Reference to thread who initiated the timeout.

Definition at line 298 of file os-lists.h.

◆ timestamp

port::clock::timestamp_t os::rtos::internal::timestamp_node::timestamp
inherited

Time stamp when the next action will be performed.

Definition at line 208 of file os-lists.h.


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