RTEMS 6.1-rc6
Loading...
Searching...
No Matches
Macros
schedulernodeimpl.h File Reference

This header file provides interfaces of the Scheduler Handler related to scheduler nodes which are only used by the implementation. More...

#include <rtems/score/schedulernode.h>
#include <rtems/score/priorityimpl.h>

Go to the source code of this file.

Macros

#define SCHEDULER_NODE_OF_WAIT_PRIORITY_NODE(node)    RTEMS_CONTAINER_OF( node, Scheduler_Node, Wait.Priority.Node.Node.Chain )
 
#define SCHEDULER_NODE_OF_WAIT_PRIORITY(node)    RTEMS_CONTAINER_OF( node, Scheduler_Node, Wait.Priority )
 
#define SCHEDULER_PRIORITY_MAP(priority)   ( ( priority ) << 1 )
 Maps a priority value to support the append indicator.
 
#define SCHEDULER_PRIORITY_UNMAP(priority)   ( ( priority ) >> 1 )
 Returns the plain priority value.
 
#define SCHEDULER_PRIORITY_PURIFY(priority)    ( ( priority ) & ~( (Priority_Control) PRIORITY_GROUP_LAST ) )
 Clears the priority append indicator bit.
 
#define SCHEDULER_PRIORITY_APPEND(priority)    ( ( priority ) | ( (Priority_Control) PRIORITY_GROUP_LAST ) )
 Returns the priority control with the append indicator bit set.
 
#define SCHEDULER_PRIORITY_IS_APPEND(priority)    ( ( ( priority ) & ( (Priority_Control) PRIORITY_GROUP_LAST ) ) != 0 )
 Returns true, if the item should be appended to its priority group, otherwise returns false and the item should be prepended to its priority group.
 

Detailed Description

This header file provides interfaces of the Scheduler Handler related to scheduler nodes which are only used by the implementation.