#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "queue.h"
#include "omx_comp_debug_levels.h"
Go to the source code of this file.
Functions | |
void | queue_init (queue_t *queue) |
void | queue_deinit (queue_t *queue) |
void | queue (queue_t *queue, void *data) |
void * | dequeue (queue_t *queue) |
int | getquenelem (queue_t *queue) |
Copyright (C) 2007 STMicroelectronics Copyright (C) 2007-2008 Nokia Corporation and/or its subsidiary(-ies).
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
$Date$ Revision $Rev$ Author $Author$
Definition in file queue.c.
void* dequeue | ( | queue_t * | queue | ) |
Dequeue an element from the given queue descriptor
queue | the queue descriptor from which to dequeue the element |
Definition at line 107 of file queue.c.
References qelem_t::data, queue_t::first, queue_t::mutex, queue_t::nelem, and qelem_t::q_forw.
Referenced by base_port_DisablePort(), base_port_FlushProcessingBuffers(), compMessageHandlerFunction(), omx_audio_mixer_BufferMgmtFunction(), omx_base_component_DoStateSet(), omx_base_filter_BufferMgmtFunction(), omx_base_sink_BufferMgmtFunction(), omx_base_source_BufferMgmtFunction(), and omx_base_source_twoport_BufferMgmtFunction().
int getquenelem | ( | queue_t * | queue | ) |
Returns the number of elements hold in the queue
queue | the requested queue |
Definition at line 128 of file queue.c.
References queue_t::mutex, and queue_t::nelem.
void queue | ( | queue_t * | queue, | |
void * | data | |||
) |
Enqueue an element to the given queue descriptor
queue | the queue descritpor where to queue data | |
data | the data to be enqueued |
Definition at line 89 of file queue.c.
References qelem_t::data, queue_t::last, queue_t::mutex, queue_t::nelem, and qelem_t::q_forw.
Referenced by base_port_AllocateTunnelBuffer(), base_port_FlushProcessingBuffers(), base_port_ReturnBufferFunction(), base_port_SendBufferFunction(), omx_base_component_SendCommand(), and videosrc_port_AllocateTunnelBuffer().
void queue_deinit | ( | queue_t * | queue | ) |
Deinitialize a queue descriptor flushing all of its internal data
queue | the queue descriptor to dump |
Definition at line 65 of file queue.c.
References queue_t::first, MAX_QUEUE_ELEMENTS, queue_t::mutex, and qelem_t::q_forw.
Referenced by base_port_Destructor(), and omx_base_component_Destructor().
void queue_init | ( | queue_t * | queue | ) |
Initialize a queue descriptor
queue | The queue descriptor to initialize. The user needs to allocate the queue |
Definition at line 41 of file queue.c.
References queue_t::first, queue_t::last, MAX_QUEUE_ELEMENTS, queue_t::mutex, queue_t::nelem, and qelem_t::q_forw.
Referenced by base_port_Constructor(), and omx_base_component_Constructor().