00001 // File: GmsListLink.h 00002 // Author: Alan Breakstone 00003 00004 /* This class is derived from a similar class in "A C++ Toolkit", 00005 which is Copyright 1991 by Jonathan S. Shapiro, and is used 00006 with permission. "A C++ Toolkit" is published by Prentice Hall, Inc. */ 00007 00008 // Contents --------------------------------------------------------- 00009 // 00010 // GmsListLink 00011 // 00012 // Description: 00013 // 00014 // C++ header file for Gismo GmsListLink class 00015 // 00016 // End -------------------------------------------------------------- 00017 00018 00019 // Interface Dependencies ------------------------------------------- 00020 00021 #ifndef GMSLISTLINK_H 00022 #define GMSLISTLINK_H 00023 00024 // End Interface Dependencies --------------------------------------- 00025 00026 00027 // Class // 00028 00029 class GmsListLink 00030 { // base class for any object that needs to be part of a doubly-linked list 00031 friend class GmsList; 00032 protected: // make available to derived classes 00033 GmsListLink *_next; // pointer to next item in list 00034 GmsListLink *_prev; // pointer to previous item in list 00035 public: 00036 GmsListLink() { _next = _prev = 0; } 00037 virtual ~GmsListLink(); 00038 GmsListLink *next()const { return _next; } 00039 GmsListLink *prev()const { return _prev; } 00040 }; 00041 00042 #endif