/[LeafOK_CVS]/pvpgn-1.7.4/src/common/queue.h
ViewVC logotype

Annotation of /pvpgn-1.7.4/src/common/queue.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (hide annotations) (vendor branch)
Tue Jun 6 03:41:38 2006 UTC (19 years, 9 months ago) by sysadm
Branch: GNU, MAIN
CVS Tags: arelease, HEAD
Changes since 1.1: +0 -0 lines
Content type: text/x-chdr
no message

1 sysadm 1.1 /*
2     * Copyright (C) 1998,1999 Ross Combs (rocombs@cs.nmsu.edu)
3     *
4     * This program is free software; you can redistribute it and/or
5     * modify it under the terms of the GNU General Public License
6     * as published by the Free Software Foundation; either version 2
7     * of the License, or (at your option) any later version.
8     *
9     * This program is distributed in the hope that it will be useful,
10     * but WITHOUT ANY WARRANTY; without even the implied warranty of
11     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12     * GNU General Public License for more details.
13     *
14     * You should have received a copy of the GNU General Public License
15     * along with this program; if not, write to the Free Software
16     * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17     */
18     #ifndef INCLUDED_QUEUE_TYPES
19     #define INCLUDED_QUEUE_TYPES
20    
21     #ifdef QUEUE_INTERNAL_ACCESS
22     #ifdef JUST_NEED_TYPES
23     # include "common/packet.h"
24     #else
25     # define JUST_NEED_TYPES
26     # include "common/packet.h"
27     # undef JUST_NEED_TYPES
28     #endif
29     #endif
30    
31     typedef struct queue
32     #ifdef QUEUE_INTERNAL_ACCESS
33     {
34     unsigned ulen, alen;
35     t_packet ** ring;
36     unsigned head, tail;
37     }
38     #endif
39     t_queue;
40    
41     #endif
42    
43    
44     /*****/
45     #ifndef JUST_NEED_TYPES
46     #ifndef INCLUDED_QUEUE_PROTOS
47     #define INCLUDED_QUEUE_PROTOS
48    
49     #define JUST_NEED_TYPES
50     #include "common/packet.h"
51     #undef JUST_NEED_TYPES
52    
53     extern t_packet * queue_pull_packet(t_queue * * queue);
54     extern t_packet * queue_peek_packet(t_queue const * const * queue);
55     extern void queue_push_packet(t_queue * * queue, t_packet * packet);
56     extern int queue_get_length(t_queue const * const * queue);
57     extern void queue_clear(t_queue * * queue);
58    
59     #endif
60     #endif

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1