µ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::interrupts Namespace Reference

Interrupts namespace. More...

Classes

class  critical_section
 Interrupts critical section RAII helper. More...
 
class  lockable
 Interrupts standard locker. More...
 
class  uncritical_section
 Interrupts critical section RAII helper. More...
 

Typedefs

using state_t = port::interrupts::state_t
 Type of variables holding interrupts status codes.
 

Functions

bool in_handler_mode (void)
 Check if the CPU is in handler mode.
 
class thread::stackstack (void)
 Get the interrupts stack.
 

Detailed Description

The os::rtos::interrupts namespace groups interrupts related types and enumerations.

Typedef Documentation

◆ state_t

using os::rtos::interrupts::state_t = typedef port::interrupts::state_t

Usually an integer large enough to hold the CPU register where the interrupt priorities are stored.

Used to temporarily store the CPU register during critical sections.

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

Function Documentation

◆ in_handler_mode()

bool os::rtos::interrupts::in_handler_mode ( void  )
inline
Parameters
None.
Return values
trueExecution is in an exception handler context.
falseExecution is in a thread context.
Note
Can be invoked from Interrupt Service Routines (obviously).

Definition at line 1101 of file os-sched.h.

1102 {
1103 return port::interrupts::in_handler_mode ();
1104 }

References os::rtos::port::interrupts::in_handler_mode().

Referenced by os::rtos::event_flags::event_flags(), os::rtos::mutex::mutex(), os::rtos::timer::timer(), os::rtos::memory_pool::alloc(), calloc(), os::rtos::thread::cancel(), os::rtos::mutex::consistent(), os::rtos::thread::detach(), free(), os::rtos::scheduler::initialize(), os::rtos::thread::join(), os::rtos::thread::kill(), os::rtos::mutex::lock(), malloc(), os::rtos::internal::object_named_system::operator delete(), os::rtos::internal::object_named_system::operator new(), operator new(), os_irq_in_handler_mode(), osDelay(), osKernelInitialize(), osMutexCreate(), osMutexDelete(), osMutexRelease(), osMutexWait(), osSignalClear(), osSignalWait(), osThreadCreate(), osThreadGetId(), osThreadGetPriority(), osThreadSetPriority(), osThreadTerminate(), osThreadYield(), osTimerCreate(), osTimerDelete(), osTimerStart(), osTimerStop(), os::rtos::scheduler::preemptive(), os::rtos::mutex::prio_ceiling(), os::rtos::mutex::prio_ceiling(), os::rtos::thread::priority(), os::rtos::thread::priority_inherited(), os::rtos::thread::priority_inherited(), realloc(), os::rtos::message_queue::receive(), os::rtos::memory_pool::reset(), os::rtos::message_queue::reset(), os::rtos::mutex::reset(), os::rtos::semaphore::reset(), os::rtos::message_queue::send(), os::rtos::clock::sleep_for(), os::rtos::clock::sleep_until(), os::rtos::timer::start(), os::rtos::scheduler::start(), os::rtos::timer::stop(), os::rtos::this_thread::thread(), os::rtos::memory_pool::timed_alloc(), os::rtos::mutex::timed_lock(), os::rtos::message_queue::timed_receive(), os::rtos::message_queue::timed_send(), os::rtos::semaphore::timed_wait(), os::rtos::event_flags::timed_wait(), os::rtos::mutex::try_lock(), os::rtos::mutex::unlock(), os::rtos::event_flags::wait(), os::rtos::semaphore::wait(), os::rtos::clock::wait_for(), and os::rtos::this_thread::yield().