Mistake on this page?
Report an issue in GitHub or email us
Data Structures | Macros | Functions
wsf_queue.h File Reference

General purpose queue service. More...

Go to the source code of this file.

Data Structures

struct  wsfQueue_t
 Queue structure. More...


#define WSF_QUEUE_INIT(pQueue)    {(pQueue)->pHead = NULL; (pQueue)->pTail = NULL;}
 Initialize a queue. More...


void WsfQueueEnq (wsfQueue_t *pQueue, void *pElem)
 Enqueue an element to the tail of a queue. More...
void * WsfQueueDeq (wsfQueue_t *pQueue)
 Dequeue an element from the head of a queue. More...
void WsfQueuePush (wsfQueue_t *pQueue, void *pElem)
 Push an element to the head of a queue. More...
void WsfQueueInsert (wsfQueue_t *pQueue, void *pElem, void *pPrev)
 Insert an element into a queue. This function is typically used when iterating over a queue. More...
void WsfQueueRemove (wsfQueue_t *pQueue, void *pElem, void *pPrev)
 Remove an element from a queue. This function is typically used when iterating over a queue. More...
uint16_t WsfQueueCount (wsfQueue_t *pQueue)
 Count the number of elements in a queue. More...
bool_t WsfQueueEmpty (wsfQueue_t *pQueue)
 Return TRUE if queue is empty. More...
bool_t WsfIsQueueDepthOne (wsfQueue_t *pQueue)
 Check for a queue depth of 1 element. More...

Detailed Description

General purpose queue service.

Copyright (c) 2009-2018 Arm Ltd. All Rights Reserved.

Copyright (c) 2019-2020 Packetcraft, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at


Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Definition in file wsf_queue.h.

Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.