2 * CDE - Common Desktop Environment
4 * Copyright (c) 1993-2012, The Open Group. All rights reserved.
6 * These libraries and programs are free software; you can
7 * redistribute them and/or modify them under the terms of the GNU
8 * Lesser General Public License as published by the Free Software
9 * Foundation; either version 2 of the License, or (at your option)
12 * These libraries and programs are distributed in the hope that
13 * they will be useful, but WITHOUT ANY WARRANTY; without even the
14 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 * PURPOSE. See the GNU Lesser General Public License for more
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with these librararies and programs; if not, write
20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21 * Floor, Boston, MA 02110-1301 USA
23 /* $XConsortium: CC_Dlist.h /main/5 1996/08/21 15:48:36 drk $ */
27 #include "CC_Listbase.h"
30 template <class T> class CC_TPtrDlist;
31 template <class T> class CC_TPtrDlistIterator;
34 class CC_TPtrDlist : public CC_TPtrSlist<T>
36 friend class CC_TPtrDlistIterator<T>;
38 // Inherit all the public/protected members from CC_TPtrSlist<T>
54 operator CC_Listbase *
58 CC_TPtrDlist(const CC_TPtrDlist<T>&);
63 virtual void clearAndDestroy();
65 operator CC_TPtrSlist<T> *() { return(this); }
71 class CC_TPtrDlistIterator : public CC_TPtrSlistIterator<T>
74 /* all the inherited member from CC_TPtrSlistIterator<T> and
75 * List_Iterator_base...
77 // From CC_TPtrSlistIterator<T>
80 // Boolean operator++()
83 // From CC_Listbase_Iterator
84 // Boolean operator--();
89 CC_TPtrDlistIterator (CC_TPtrDlist<T> &list)
90 : CC_TPtrSlistIterator<T>( *((CC_TPtrSlist<T> *)&list) )
94 CC_Boolean operator+=(size_t n);
98 #ifdef EXPAND_TEMPLATES
102 #endif /* __CC_Slist_h */
103 /* DO NOT ADD ANY LINES AFTER THIS #endif */