RTEMS  5.1
extension.h
Go to the documentation of this file.
1 
9 /*
10  * COPYRIGHT (c) 1989-2008.
11  * On-Line Applications Research Corporation (OAR).
12  *
13  * The license and distribution terms for this file may be
14  * found in the file LICENSE in this distribution or at
15  * http://www.rtems.org/license/LICENSE.
16  */
17 
18 #ifndef _RTEMS_EXTENSION_H
19 #define _RTEMS_EXTENSION_H
20 
21 #include <rtems/rtems/status.h>
22 #include <rtems/rtems/types.h>
23 #include <rtems/score/userext.h>
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
29 typedef User_extensions_routine
30  rtems_extension RTEMS_DEPRECATED;
31 
157 typedef User_extensions_thread_create_extension rtems_task_create_extension;
158 typedef User_extensions_thread_delete_extension rtems_task_delete_extension;
159 typedef User_extensions_thread_start_extension rtems_task_start_extension;
160 typedef User_extensions_thread_restart_extension rtems_task_restart_extension;
161 typedef User_extensions_thread_switch_extension rtems_task_switch_extension;
162 typedef User_extensions_thread_begin_extension rtems_task_begin_extension;
163 typedef User_extensions_thread_exitted_extension rtems_task_exitted_extension;
164 typedef User_extensions_fatal_extension rtems_fatal_extension;
165 typedef User_extensions_thread_terminate_extension rtems_task_terminate_extension;
166 
168 
170 
171 typedef Internal_errors_t rtems_fatal_code;
172 
193  rtems_name name,
194  const rtems_extensions_table *extension_table,
195  rtems_id *id
196 );
197 
215  rtems_name name,
216  rtems_id *id
217 );
218 
231  rtems_id id
232 );
233 
236 #ifdef __cplusplus
237 }
238 #endif
239 
240 #endif
241 /* end of include file */
void(* User_extensions_thread_delete_extension)(struct _Thread_Control *executing, struct _Thread_Control *deleted)
Task delete extension.
Definition: userext.h:91
void(* User_extensions_thread_begin_extension)(struct _Thread_Control *executing)
Task begin extension.
Definition: userext.h:171
uint32_t rtems_name
Classic API object name type.
Definition: types.h:77
bool(* User_extensions_thread_create_extension)(struct _Thread_Control *executing, struct _Thread_Control *created)
Task create extension.
Definition: userext.h:71
rtems_status_code rtems_extension_delete(rtems_id id)
Deletes an extension set object specified by the identifier id.
Definition: extensiondelete.c:25
void(* User_extensions_thread_restart_extension)(struct _Thread_Control *executing, struct _Thread_Control *restarted)
Task restart extension.
Definition: userext.h:133
void(* User_extensions_thread_switch_extension)(struct _Thread_Control *executing, struct _Thread_Control *heir)
Task switch extension.
Definition: userext.h:156
Internal_errors_Source
This type lists the possible sources from which an error can be reported.
Definition: interr.h:47
rtems_status_code rtems_extension_create(rtems_name name, const rtems_extensions_table *extension_table, rtems_id *id)
Creates an extension set object.
Definition: extensioncreate.c:27
rtems_status_code
Classic API Status.
Definition: status.h:43
void(* User_extensions_fatal_extension)(Internal_errors_Source source, bool always_set_to_false, Internal_errors_t code)
Fatal error extension.
Definition: userext.h:203
void(* User_extensions_thread_start_extension)(struct _Thread_Control *executing, struct _Thread_Control *started)
Task start extension.
Definition: userext.h:111
rtems_status_code rtems_extension_ident(rtems_name name, rtems_id *id)
Identifies an extension set object by a name.
Definition: extensionident.c:27
void(* User_extensions_thread_terminate_extension)(struct _Thread_Control *terminated)
Task termination extension.
Definition: userext.h:225
User extension table.
Definition: userext.h:232
Objects_Id rtems_id
Used to manage and manipulate RTEMS object identifiers.
Definition: types.h:83
User Extension Handler API.
void(* User_extensions_thread_exitted_extension)(struct _Thread_Control *executing)
Task exitted extension.
Definition: userext.h:185