Data Structures | |
struct | xLIST |
struct | xLIST_ITEM |
struct | xMINI_LIST_ITEM |
Macros | |
#define | listCURRENT_LIST_LENGTH(pxList) ( ( pxList )->uxNumberOfItems ) |
#define | listGET_ITEM_VALUE_OF_HEAD_ENTRY(pxList) ( (&( ( pxList )->xListEnd ))->pxNext->xItemValue ) |
#define | listGET_LIST_ITEM_OWNER(pxListItem) ( pxListItem )->pvOwner |
#define | listGET_LIST_ITEM_VALUE(pxListItem) ( ( pxListItem )->xItemValue ) |
#define | listGET_OWNER_OF_HEAD_ENTRY(pxList) ( (&( ( pxList )->xListEnd ))->pxNext->pvOwner ) |
#define | listGET_OWNER_OF_NEXT_ENTRY(pxTCB, pxList) |
#define | listIS_CONTAINED_WITHIN(pxList, pxListItem) ( ( pxListItem )->pvContainer == ( void * ) ( pxList ) ) |
#define | listLIST_IS_EMPTY(pxList) ( ( pxList )->uxNumberOfItems == ( unsigned portBASE_TYPE ) 0 ) |
#define | listLIST_IS_INITIALISED(pxList) ( ( pxList )->xListEnd.xItemValue == portMAX_DELAY ) |
#define | listLIST_ITEM_CONTAINER(pxListItem) ( ( pxListItem )->pvContainer ) |
#define | listSET_LIST_ITEM_OWNER(pxListItem, pxOwner) ( pxListItem )->pvOwner = ( void * ) ( pxOwner ) |
#define | listSET_LIST_ITEM_VALUE(pxListItem, xValue) ( pxListItem )->xItemValue = ( xValue ) |
Typedefs | |
typedef struct xLIST | xList |
typedef struct xLIST_ITEM | xListItem |
typedef struct xMINI_LIST_ITEM | xMiniListItem |
Functions | |
unsigned portBASE_TYPE | uxListRemove (xListItem *pxItemToRemove) |
void | vListInitialise (xList *pxList) |
void | vListInitialiseItem (xListItem *pxItem) |
void | vListInsert (xList *pxList, xListItem *pxNewListItem) |
void | vListInsertEnd (xList *pxList, xListItem *pxNewListItem) |
#define listCURRENT_LIST_LENGTH | ( | pxList | ) | ( ( pxList )->uxNumberOfItems ) |
Referenced by portTASK_FUNCTION(), and vTaskSuspend().
#define listGET_ITEM_VALUE_OF_HEAD_ENTRY | ( | pxList | ) | ( (&( ( pxList )->xListEnd ))->pxNext->xItemValue ) |
Referenced by prvGetNextExpireTime(), and prvSwitchTimerLists().
#define listGET_LIST_ITEM_OWNER | ( | pxListItem | ) | ( pxListItem )->pvOwner |
#define listGET_LIST_ITEM_VALUE | ( | pxListItem | ) | ( ( pxListItem )->xItemValue ) |
Referenced by vTaskIncrementTick().
#define listGET_OWNER_OF_HEAD_ENTRY | ( | pxList | ) | ( (&( ( pxList )->xListEnd ))->pxNext->pvOwner ) |
#define listGET_OWNER_OF_NEXT_ENTRY | ( | pxTCB, | |
pxList | |||
) |
#define listIS_CONTAINED_WITHIN | ( | pxList, | |
pxListItem | |||
) | ( ( pxListItem )->pvContainer == ( void * ) ( pxList ) ) |
Referenced by prvProcessReceivedCommands(), vTaskPrioritySet(), xTaskIsTaskSuspended(), and xTimerIsTimerActive().
#define listLIST_IS_EMPTY | ( | pxList | ) | ( ( pxList )->uxNumberOfItems == ( unsigned portBASE_TYPE ) 0 ) |
#define listLIST_IS_INITIALISED | ( | pxList | ) | ( ( pxList )->xListEnd.xItemValue == portMAX_DELAY ) |
#define listLIST_ITEM_CONTAINER | ( | pxListItem | ) | ( ( pxListItem )->pvContainer ) |
Referenced by eTaskStateGet().
#define listSET_LIST_ITEM_OWNER | ( | pxListItem, | |
pxOwner | |||
) | ( pxListItem )->pvOwner = ( void * ) ( pxOwner ) |
Referenced by prvInitialiseTCBVariables(), prvInsertTimerInActiveList(), and prvSwitchTimerLists().
#define listSET_LIST_ITEM_VALUE | ( | pxListItem, | |
xValue | |||
) | ( pxListItem )->xItemValue = ( xValue ) |
typedef struct xLIST_ITEM xListItem |
typedef struct xMINI_LIST_ITEM xMiniListItem |
unsigned portBASE_TYPE uxListRemove | ( | xListItem * | pxItemToRemove | ) |
References xLIST_ITEM::pvContainer, xLIST::pxIndex, xLIST_ITEM::pxNext, xLIST_ITEM::pxPrevious, and xLIST::uxNumberOfItems.
Referenced by prvCheckTasksWaitingTermination(), prvProcessExpiredTimer(), prvProcessReceivedCommands(), prvSwitchTimerLists(), vTaskDelay(), vTaskDelayUntil(), vTaskDelete(), vTaskPlaceOnEventList(), vTaskPlaceOnEventListRestricted(), vTaskPrioritySet(), vTaskResume(), vTaskSuspend(), xTaskRemoveFromEventList(), xTaskResumeAll(), and xTaskResumeFromISR().
void vListInitialise | ( | xList * | pxList | ) |
void vListInitialiseItem | ( | xListItem * | pxItem | ) |
References xLIST_ITEM::pvContainer.
Referenced by prvInitialiseTCBVariables(), and xTimerCreate().
References xLIST_ITEM::pvContainer, xLIST_ITEM::pxNext, xLIST_ITEM::pxPrevious, xMINI_LIST_ITEM::pxPrevious, xLIST::uxNumberOfItems, xLIST_ITEM::xItemValue, and xLIST::xListEnd.
Referenced by prvAddCurrentTaskToDelayedList(), prvInsertTimerInActiveList(), prvSwitchTimerLists(), and vTaskPlaceOnEventList().