btmux-0.6-rc4/doc/
btmux-0.6-rc4/event/
btmux-0.6-rc4/game/
btmux-0.6-rc4/game/maps/
btmux-0.6-rc4/game/mechs/
btmux-0.6-rc4/game/text/help/
btmux-0.6-rc4/game/text/help/cat_faction/
btmux-0.6-rc4/game/text/help/cat_inform/
btmux-0.6-rc4/game/text/help/cat_misc/
btmux-0.6-rc4/game/text/help/cat_mux/
btmux-0.6-rc4/game/text/help/cat_mux/cat_commands/
btmux-0.6-rc4/game/text/help/cat_mux/cat_functions/
btmux-0.6-rc4/game/text/help/cat_templates/
btmux-0.6-rc4/game/text/wizhelp/
btmux-0.6-rc4/include/
btmux-0.6-rc4/misc/
btmux-0.6-rc4/python/
btmux-0.6-rc4/src/hcode/btech/
btmux-0.6-rc4/tree/
/*
 * $Id: myfifo.h,v 1.1 2005/06/13 20:50:45 murrayma Exp $
 *
 * Author: Markus Stenberg <fingon@iki.fi>
 *
 *  Copyright (c) 1996 Markus Stenberg
 *       All rights reserved
 *
 * Created: Sun Dec  1 11:46:22 1996 fingon
 * Last modified: Sun Dec  1 12:43:04 1996 fingon
 *
 */

#ifndef MYFIFO_H
#define MYFIFO_H

typedef struct myfifo_entry_struct {
    void *data;
    struct myfifo_entry_struct *next;
    struct myfifo_entry_struct *prev;
} myfifo_e;

typedef struct myfifo_struct {
    myfifo_e *first;		/* First entry (last put in) */
    myfifo_e *last;		/* Last entry (first to get out) */
    int count;			/* Number of entries in the queue */
} myfifo;

/* myfifo.c */
int myfifo_length(myfifo ** foo);
void *myfifo_pop(myfifo ** foo);
void myfifo_push(myfifo ** foo, void *data);
void myfifo_trav(myfifo ** foo, void (*func) ());
void myfifo_trav_r(myfifo ** foo, void (*func) ());

#endif				/* MYFIFO_H */