RTEMS  5.1
priorityimpl.h
Go to the documentation of this file.
1 
10 /*
11  * COPYRIGHT (c) 1989-2011.
12  * On-Line Applications Research Corporation (OAR).
13  *
14  * The license and distribution terms for this file may be
15  * found in the file LICENSE in this distribution or at
16  * http://www.rtems.org/license/LICENSE.
17  */
18 
19 #ifndef _RTEMS_POSIX_PRIORITYIMPL_H
20 #define _RTEMS_POSIX_PRIORITYIMPL_H
21 
22 #include <rtems/score/scheduler.h>
23 #include <rtems/score/assert.h>
24 
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28 
42 #define POSIX_SCHEDULER_MINIMUM_PRIORITY (1)
43 
53  const Scheduler_Control *scheduler
54 )
55 {
56  _Assert( (int) scheduler->maximum_priority > 1 );
57  return (int) scheduler->maximum_priority - 1;
58 }
59 
84  const Scheduler_Control *scheduler,
85  int priority,
86  bool *valid
87 );
88 
99  const Scheduler_Control *scheduler,
100  Priority_Control priority
101 );
102 
105 #ifdef __cplusplus
106 }
107 #endif
108 
109 #endif
uint64_t Priority_Control
The thread priority control.
Definition: priority.h:70
RTEMS_INLINE_ROUTINE int _POSIX_Priority_Get_maximum(const Scheduler_Control *scheduler)
Gets the maximum POSIX API priority for this scheduler instance.
Definition: priorityimpl.h:52
int _POSIX_Priority_From_core(const Scheduler_Control *scheduler, Priority_Control priority)
Converts the SuperCore priority to the corresponding POSIX API priority.
Definition: psxpriorityisvalid.c:42
Information for the Assert Handler.
Priority_Control maximum_priority
The maximum priority value of this scheduler.
Definition: scheduler.h:286
Scheduler control.
Definition: scheduler.h:269
#define RTEMS_INLINE_ROUTINE
Definition: basedefs.h:66
Constants and Structures Associated with the Scheduler.
Priority_Control _POSIX_Priority_To_core(const Scheduler_Control *scheduler, int priority, bool *valid)
Converts the POSIX API priority to the corresponding SuperCore priority and validates it.
Definition: psxpriorityisvalid.c:24
#define _Assert(_e)
Assertion similar to assert() controlled via RTEMS_DEBUG instead of NDEBUG.
Definition: assert.h:100