libFirm 1.20
libfirm/adt/pqueue.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (C) 1995-2011 University of Karlsruhe.  All right reserved.
00003  *
00004  * This file is part of libFirm.
00005  *
00006  * This file may be distributed and/or modified under the terms of the
00007  * GNU General Public License version 2 as published by the Free Software
00008  * Foundation and appearing in the file LICENSE.GPL included in the
00009  * packaging of this file.
00010  *
00011  * Licensees holding valid libFirm Professional Edition licenses may use
00012  * this file in accordance with the libFirm Commercial License.
00013  * Agreement provided with the Software.
00014  *
00015  * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00016  * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
00017  * PURPOSE.
00018  */
00019 
00027 #ifndef FIRM_ADT_PQUEUE_H
00028 #define FIRM_ADT_PQUEUE_H
00029 
00030 #include "../begin.h"
00031 
00041 typedef struct pqueue_t pqueue_t;
00042 
00047 FIRM_API pqueue_t *new_pqueue(void);
00048 
00053 FIRM_API void del_pqueue(pqueue_t *q);
00054 
00061 FIRM_API void pqueue_put(pqueue_t *q, void *data, int priority);
00062 
00068 FIRM_API void *pqueue_pop_front(pqueue_t *q);
00069 
00075 FIRM_API size_t pqueue_length(const pqueue_t *q);
00076 
00082 FIRM_API int pqueue_empty(const pqueue_t *q);
00083 
00086 #include "../end.h"
00087 
00088 #endif