PDK API Guide for J721E
Queue.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2017-present, Texas Instruments Incorporated
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * * Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  *
12  * * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  *
16  * * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32 
50 #ifndef ti_osal_Queue__include
51 #define ti_osal_Queue__include
52 
53 #include <stdbool.h>
54 
55 #ifdef __cplusplus
56 extern "C" {
57 #endif
58 
64 typedef struct {
66  struct Osal_QueueElem *next;
67 
69  struct Osal_QueueElem *prev;
71 
76 typedef void *Osal_Queue_Handle;
77 
86 void Osal_Queue_construct(void * structPtr, const void * queueParams);
94 Osal_Queue_Handle Osal_Queue_handle(void *structPtr);
95 
102 bool Osal_Queue_empty(Osal_Queue_Handle queueHandle);
103 
110 void * Osal_Queue_get(Osal_Queue_Handle queueHandle);
111 
119 void Osal_Queue_put(Osal_Queue_Handle queueHandle,Osal_Queue_Elem *ptr);
120 
121 #ifdef __cplusplus
122 }
123 #endif
124 
125 #endif /* ti_osal_CacheP__include */
126 /* @} */
void * Osal_Queue_get(Osal_Queue_Handle queueHandle)
Function to return the element at the front of the queue.
void Osal_Queue_construct(void *structPtr, const void *queueParams)
Function to construct the queue.
struct Osal_QueueElem * prev
Definition: Queue.h:69
bool Osal_Queue_empty(Osal_Queue_Handle queueHandle)
Function to perform queue empty chcek.
Queue element.
Definition: Queue.h:64
void * Osal_Queue_Handle
Definition: Queue.h:76
Osal_Queue_Handle Osal_Queue_handle(void *structPtr)
Function to return the queue handle from the structure.
void Osal_Queue_put(Osal_Queue_Handle queueHandle, Osal_Queue_Elem *ptr)
Function to put the element to the queue.
struct Osal_QueueElem * next
Definition: Queue.h:66