RTEMS
|
User Extension Handler API. More...
#include <rtems/score/userextdata.h>
#include <rtems/score/chainimpl.h>
#include <rtems/score/isrlock.h>
#include <rtems/score/thread.h>
#include <rtems/score/percpu.h>
Go to the source code of this file.
Classes | |
struct | User_extensions_Iterator |
Chain iterator for dynamic user extensions. More... | |
struct | User_extensions_List |
struct | User_extensions_Thread_create_context |
struct | User_extensions_Fatal_context |
Typedefs | |
typedef struct User_extensions_Iterator | User_extensions_Iterator |
Chain iterator for dynamic user extensions. More... | |
Functions | |
Extension Callout Dispatcher | |
static bool | _User_extensions_Thread_create (Thread_Control *created) |
Creates a thread. More... | |
static void | _User_extensions_Thread_delete (Thread_Control *deleted) |
Deletes a thread. More... | |
static void | _User_extensions_Thread_start (Thread_Control *started) |
Starts a thread. More... | |
static void | _User_extensions_Thread_restart (Thread_Control *restarted) |
Restarts a thread. More... | |
static void | _User_extensions_Thread_begin (Thread_Control *executing) |
Begins a thread. More... | |
static void | _User_extensions_Thread_switch (Thread_Control *executing, Thread_Control *heir) |
Switches the thread from the executing to the heir. More... | |
static void | _User_extensions_Thread_exitted (Thread_Control *executing) |
A user extension thread exitted. More... | |
static void | _User_extensions_Fatal (Internal_errors_Source source, Internal_errors_t error) |
Forwards all visitors that there was a fatal failure. More... | |
static void | _User_extensions_Thread_terminate (Thread_Control *executing) |
Terminates the executing thread. More... | |
static void | _User_extensions_Acquire (ISR_lock_Context *lock_context) |
Disables interrupts and acquires the lock context. More... | |
static void | _User_extensions_Release (ISR_lock_Context *lock_context) |
Releases the lock context and enables interrupts. More... | |
static void | _User_extensions_Destroy_iterators (Thread_Control *the_thread) |
Destroys all user extension iterators of a thread. More... | |
Variables | |
User_extensions_List | _User_extensions_List |
List of active extensions. | |
Chain_Control | _User_extensions_Switches_list |
List of active task switch extensions. | |
Extension Maintainance | |
typedef void(* | User_extensions_Visitor) (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
User extension visitor. More... | |
void | _User_extensions_Handler_initialization (void) |
Initializes the user extensions handler. | |
void | _User_extensions_Add_set (User_extensions_Control *extension) |
Adds a user extension. More... | |
static __inline__ void | _User_extensions_Add_API_set (User_extensions_Control *extension) |
Adds a user extension. More... | |
static __inline__ void | _User_extensions_Add_set_with_table (User_extensions_Control *extension, const User_extensions_Table *extension_table) |
Adds a user extension with the given extension table as callouts. More... | |
void | _User_extensions_Remove_set (User_extensions_Control *extension) |
Removes a user extension. More... | |
void | _User_extensions_Thread_create_visitor (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
Creates a visitor. More... | |
void | _User_extensions_Thread_delete_visitor (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
Deletes a visitor. More... | |
void | _User_extensions_Thread_start_visitor (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
Starts a visitor. More... | |
void | _User_extensions_Thread_restart_visitor (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
Restarts a visitor. More... | |
void | _User_extensions_Thread_begin_visitor (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
Calls the begin function of the thread callout for the visitor. More... | |
void | _User_extensions_Thread_exitted_visitor (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
Calls the exitted function of the thread callout for the visitor. More... | |
void | _User_extensions_Fatal_visitor (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
Calls the fatal function of the thread callout for the visitor. More... | |
void | _User_extensions_Thread_terminate_visitor (Thread_Control *executing, void *arg, const User_extensions_Table *callouts) |
Terminates a visitor. More... | |
void | _User_extensions_Iterate (void *arg, User_extensions_Visitor visitor, Chain_Iterator_direction direction) |
Iterates through all user extensions and calls the visitor for each. More... | |
User Extension Handler API.
Definition in file userextimpl.h.