home *** CD-ROM | disk | FTP | other *** search
/ PC Media 7 / PC MEDIA CD07.iso / share / prog / cm / cmdeque.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-09-06  |  1.4 KB  |  33 lines

  1. // CmDeque.h
  2. // -----------------------------------------------------------------
  3. // Compendium - C++ Container Class Library
  4. // Copyright (C) 1992-1994, Glenn M. Poorman, All rights reserved
  5. // -----------------------------------------------------------------
  6. // Deque (double ended queue) definition.
  7. // -----------------------------------------------------------------
  8.  
  9. #ifndef _CMDEQUE_H
  10. #define _CMDEQUE_H
  11.  
  12. #include <cm/include/cmlist.h>
  13.  
  14. class CmDeque : public CmLinkedList {       // Deque class definition.
  15. public:
  16.   CmDeque();                                // Default deque constructor.
  17.   CmDeque(const CmDeque&);                  // Deque copy constructor.
  18.  ~CmDeque() {}                              // Deque destructor.
  19.  
  20.   CmDeque& operator=(const CmDeque&);       // Assignment operator.
  21.  
  22.   Bool      pushLeft (CmObject*);           // Push object into queue left.
  23.   Bool      pushRight(CmObject*);           // Push object into queue right.
  24.   CmObject* popLeft  ();                    // Pop and return from queue left.
  25.   CmObject* popRight ();                    // Pop and return from queue right.
  26.   CmObject* peekLeft () const;              // Return pointer to left object.
  27.   CmObject* peekRight() const;              // Return pointer to right object.
  28.  
  29.   CMOBJECT_DEFINE(CmDeque, CmLinkedList)    // Define object funcs.
  30. };
  31.  
  32. #endif
  33.