µOS++ IIIe Reference  v6.3.15
“Perfekt ist nicht gut genug”
The third edition of µOS++, a POSIX inspired open source system, written in C++.
os::rtos Namespace Reference

RTOS namespace. More...

Namespaces

 flags
 Generic flags namespace.
 
 internal
 A namespace to group all internal implementation objects.
 
 interrupts
 Interrupts namespace.
 
 memory
 
 port
 
 result
 Values returned by RTOS functions.
 
 scheduler
 Scheduler namespace.
 
 statistics
 Statistics namespace.
 
 this_thread
 A convenience namespace to access the current running thread.
 

Classes

class  adjustable_clock
 Adjustable (non-steady) clock. More...
 
class  clock
 Generic clock. More...
 
class  clock_highres
 High Resolution derived clock. More...
 
class  clock_rtc
 Real time clock. More...
 
class  clock_systick
 SysTick derived clock. More...
 
class  condition_variable
 POSIX compliant condition variable. More...
 
class  event_flags
 Synchronised event flags. More...
 
class  memory_pool
 Synchronised memory pool, using the default RTOS allocator. More...
 
class  memory_pool_allocated
 Template of a synchronised memory pool with allocator. More...
 
class  memory_pool_inclusive
 Template of a synchronised memory pool with block type and local storage. More...
 
class  memory_pool_typed
 Template of a synchronised memory pool with block type and allocator. More...
 
class  message_queue
 POSIX compliant message queue, using the default RTOS allocator. More...
 
class  message_queue_allocated
 Template of a POSIX compliant message queue with allocator. More...
 
class  message_queue_inclusive
 Template of a POSIX compliant message queue with message type and local storage. More...
 
class  message_queue_typed
 Template of a POSIX compliant message queue with message type and allocator. More...
 
class  mutex
 POSIX compliant mutex. More...
 
class  mutex_recursive
 POSIX compliant recursive mutex. More...
 
class  null_locker
 Null locker. More...
 
class  semaphore
 POSIX compliant semaphore. More...
 
class  semaphore_binary
 POSIX compliant binary semaphore. More...
 
class  semaphore_counting
 POSIX compliant counting semaphore. More...
 
class  thread
 POSIX compliant thread, using the default RTOS allocator. More...
 
class  thread_allocated
 Template of a POSIX compliant thread with allocator. More...
 
class  thread_inclusive
 Template of a POSIX compliant thread with local stack. More...
 
class  timer
 User single-shot or periodic timer. More...
 

Types

using mutexes_list = utils::intrusive_list< mutex, utils::double_list_links, &mutex::owner_links_ >
 
using result_t = uint32_t
 Type of values returned by RTOS functions. More...
 

Functions

template<typename T , typename ... Args>
std::enable_if<!std::is_array< T >::value, std::shared_ptr< T > >::type make_shared (Args &&... args)
 Create an object that is owned by a shared_ptr and is allocated using the RTOS system allocator. More...
 

Variables

clock_highres hrclock
 The high resolution clock object instance. More...
 
clock_rtc rtclock
 The real time clock object instance. More...
 
clock_systick sysclock
 The system clock object instance. More...
 

Detailed Description

RTOS namespace.

The os::rtos namespace groups all RTOS specific declarations, either directly or via nested namespaces.

Types

◆ mutexes_list

Definition at line 298 of file os-mutex.cpp.

◆ result_t

using os::rtos::result_t = typedef uint32_t

Type of values returned by RTOS functions.

For error processing reasons, most µOS++ RTOS functions return a numeric result, which, according to POSIX, when the call was successful, must be 0 (result::ok) or an error code defined in <errno.h> otherwise.

Definition at line 96 of file os-decls.h.