spandsp: queue.h Source File

spandsp 0.0.6

private/queue.h
1/*
2 * SpanDSP - a series of DSP components for telephony
3 *
4 * private/queue.h - simple in process message queuing
5 *
6 * Written by Steve Underwood <steveu@coppice.org>
7 *
8 * Copyright (C) 2004 Steve Underwood
9 *
10 * All rights reserved.
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 2.1,
14 * as published by the Free Software Foundation.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser General Public
22 * License along with this program; if not, write to the Free Software
23 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 */
25
26#if !defined(_SPANDSP_PRIVATE_QUEUE_H_)
27#define _SPANDSP_PRIVATE_QUEUE_H_
28
29/*!
30 Queue descriptor. This defines the working state for a single instance of
31 a byte stream or message oriented queue.
32*/
33 struct queue_state_s
34{
35 /*! \brief Flags indicating the mode of the queue. */
36 int flags;
37 /*! \brief The length of the data buffer. */
38 int len;
39 /*! \brief The buffer input pointer. */
40 volatile int iptr;
41 /*! \brief The buffer output pointer. */
42 volatile int optr;
43#if defined(SPANDSP_FULLY_DEFINE_QUEUE_STATE_T)
44 /*! \brief The data buffer, sized at the time the structure is created. */
45 uint8_t data[];
46#endif
47};
48
49#endif
50/*- End of file ------------------------------------------------------------*/
queue_state_s
Definition private/queue.h:34
queue_state_s::flags
int flags
Flags indicating the mode of the queue.
Definition private/queue.h:36
queue_state_s::optr
volatile int optr
The buffer output pointer.
Definition private/queue.h:42
queue_state_s::len
int len
The length of the data buffer.
Definition private/queue.h:38
queue_state_s::iptr
volatile int iptr
The buffer input pointer.
Definition private/queue.h:40