/* File: queue.h

   Interface for a FIFO queue which is derived
   from our list ADT
*/

#ifndef _queue_h
#define _queue_h

#include "list5.h"

class Queue : private List {  /* private derivation of List */

public:
   Queue() ;		/* default constructor */
   ~Queue() ;		/* destructor */
   void Enqueue(data) ;	/* add data to the queue */
   data Dequeue() ;	/* remove data from the queue */
   data Front() ;	/* return first element of the queue */
   int IsEmpty() ;	/* Is the queue empty? 1=Yes, 0=No */
   int Length() ;	/* Number of items in the queue */

   List::Print ;	/* Make List::Print accessible  */
			/* Note: no return type or () */
} ;

#endif
