00001 /****************************************************************************** 00002 * 00003 * $Id: classlist.h,v 1.8 2001/03/19 19:27:39 root Exp $ 00004 * 00005 * Copyright (C) 1997-2008 by Dimitri van Heesch. 00006 * 00007 * Permission to use, copy, modify, and distribute this software and its 00008 * documentation under the terms of the GNU General Public License is hereby 00009 * granted. No representations are made about the suitability of this software 00010 * for any purpose. It is provided "as is" without express or implied warranty. 00011 * See the GNU General Public License for more details. 00012 * 00013 * Documents produced by Doxygen are derivative works derived from the 00014 * input used in their production; they are not affected by this license. 00015 * 00016 */ 00017 00018 #ifndef CLASSLIST_H 00019 #define CLASSLIST_H 00020 00021 #include <qlist.h> 00022 #include <qdict.h> 00023 00024 #include "classdef.h" 00025 #include "sortdict.h" 00026 00027 class ClassList : public QList<ClassDef> 00028 { 00029 public: 00030 ClassList(); 00031 ~ClassList(); 00032 00033 int compareItems(GCI item1,GCI item2); 00034 }; 00035 00036 class ClassListIterator : public QListIterator<ClassDef> 00037 { 00038 public: 00039 ClassListIterator(const ClassList &list); 00040 }; 00041 00042 class ClassDict : public QDict<ClassDef> 00043 { 00044 public: 00045 ClassDict(int size) : QDict<ClassDef>(size) {} 00046 ~ClassDict() {} 00047 }; 00048 00049 class ClassSDict : public SDict<ClassDef> 00050 { 00051 public: 00052 ClassSDict(int size=17) : SDict<ClassDef>(size) {} 00053 ~ClassSDict() {} 00054 int compareItems(GCI item1,GCI item2); 00055 void writeDeclaration(OutputList &ol,const ClassDef::CompoundType *filter=0, 00056 const char *header=0,bool localNames=FALSE); 00057 }; 00058 00059 #endif