diff options
Diffstat (limited to 'src/packagedef.h')
-rw-r--r-- | src/packagedef.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/src/packagedef.h b/src/packagedef.h new file mode 100644 index 0000000..7d5224a --- /dev/null +++ b/src/packagedef.h @@ -0,0 +1,62 @@ +/****************************************************************************** + * + * + * + * Copyright (C) 1997-2001 by Dimitri van Heesch. + * + * Permission to use, copy, modify, and distribute this software and its + * documentation under the terms of the GNU General Public License is hereby + * granted. No representations are made about the suitability of this software + * for any purpose. It is provided "as is" without express or implied warranty. + * See the GNU General Public License for more details. + * + * Documents produced by Doxygen are derivative works derived from the + * input used in their production; they are not affected by this license. + * + */ + +#ifndef PACKAGEDEF_H +#define PACKAGEDEF_H + +#include "qtbc.h" +#include <qlist.h> +#include <qdict.h> +#include "definition.h" +#include "sortdict.h" + +class ClassList; +class ClassDef; +class PackageList; +class OutputList; + +class PackageDef : public Definition +{ + public: + PackageDef(const char *fName,int line, const char *name); + ~PackageDef(); + DefType definitionType() { return TypePackage; } + QCString getOutputFileBase() const { return packageFileName; } + void addClass(const ClassDef *def); + void writeDocumentation(OutputList &ol); + bool isLinkableInProject() + { + return hasDocumentation() && !isReference(); + } + bool isLinkable() + { + return isLinkableInProject() || isReference(); + } + + private: + QCString packageFileName; // base name of the generated file + ClassList *classList; // list of classes in the package +}; + +class PackageSDict : public SDict<PackageDef> +{ + public: + PackageSDict(int size) : SDict<PackageDef>(size) {} +}; + +#endif + |