40 lines
941 B
C
40 lines
941 B
C
/* HEADER - P_QUE.H
|
|
Copyright (C) Psion PLC 1991-92
|
|
VER DATE BY DESCRIPTION
|
|
===== ======== === ===========
|
|
1.00F 26/04/90 NSM First relase
|
|
1.10F 07/07/92 NSM Second release
|
|
*/
|
|
#ifndef P_QUE_H
|
|
#define P_QUE_H
|
|
|
|
#include <stdepoc.h>
|
|
|
|
#define P_ISEMPTYQ(q) ((q)==(q)->next)
|
|
#define P_INITQ(q) (q)->next=(q)->prev=(q)
|
|
#define P_DECLAREQ(q) P_QUE q = {&q,&q}
|
|
typedef struct p_que
|
|
{
|
|
struct p_que *next; /* Next entry */
|
|
struct p_que *prev; /* Previous entry */
|
|
} P_QUE;
|
|
typedef struct
|
|
{
|
|
P_QUE q; /* Que entry control */
|
|
long int key; /* Delta key value */
|
|
} P_DELTA;
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
#pragma save,call(reg_param =>(si,di),reg_saved =>(ax,cx,dx,si,di,EPOC_SAVE))
|
|
extern void p_enque(P_QUE *,P_QUE *);
|
|
extern void p_deque(P_QUE *);
|
|
#pragma restore
|
|
P_DELTA *p_enqued(P_QUE *,P_DELTA *,long int);
|
|
P_DELTA *p_dequed(P_QUE *,P_DELTA *);
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // P_QUE_H
|