1 /*	qsub.c		some routines for building queues */
2 
3 
4 #include "qsubs.h"
5 
6 /* puts elements of the structure into squeue if there is room */
7 
enqueue(cur,nm,state)8 enqueue(cur,nm,state)
9 	char *cur, *nm;
10 	int state;
11 {
12 	int nhead;
13 	if (head<qlength-1) nhead=head+1; else nhead=0;
14 	if (nhead == tail) return -1;
15 	squeue[head].current = cur;
16 	squeue[head].name = nm;
17 	squeue[head].qstate = state;
18 	head = nhead;
19 	return 0;
20 	}
21 
dequeue()22 struct queue *dequeue()
23 {
24 	struct queue *tptr;
25 	if (head==tail) return 0;
26 
27 	tptr = &squeue[tail];
28 	if (tail<qlength-1) tail++ ; else tail=0;
29 	return tptr;
30 	}
31