Root/
Source at commit 1322 created 12 years 8 months ago. By meklort, Add doxygen to utils folder | |
---|---|
1 | /******************************************************************************␊ |
2 | *␊ |
3 | * $Id: doxygen.h,v 1.39 2001/03/19 19:27:40 root Exp $␊ |
4 | *␊ |
5 | *␊ |
6 | * Copyright (C) 1997-2011 by Dimitri van Heesch.␊ |
7 | *␊ |
8 | * Permission to use, copy, modify, and distribute this software and its␊ |
9 | * documentation under the terms of the GNU General Public License is hereby ␊ |
10 | * granted. No representations are made about the suitability of this software ␊ |
11 | * for any purpose. It is provided "as is" without express or implied warranty.␊ |
12 | * See the GNU General Public License for more details.␊ |
13 | *␊ |
14 | * Documents produced by Doxygen are derivative works derived from the␊ |
15 | * input used in their production; they are not affected by this license.␊ |
16 | *␊ |
17 | */␊ |
18 | ␊ |
19 | #ifndef DOXYGEN_H␊ |
20 | #define DOXYGEN_H␊ |
21 | ␊ |
22 | #include "qtbc.h"␊ |
23 | #include <qdatetime.h>␊ |
24 | #include <qcache.h>␊ |
25 | #include "ftextstream.h"␊ |
26 | #include "groupdef.h"␊ |
27 | #include "filedef.h"␊ |
28 | #include "classdef.h"␊ |
29 | #include "memberdef.h"␊ |
30 | #include "classlist.h"␊ |
31 | #include "membername.h"␊ |
32 | #include "filename.h"␊ |
33 | #include "namespacedef.h"␊ |
34 | #include "formula.h"␊ |
35 | #include "section.h"␊ |
36 | #include "membergroup.h"␊ |
37 | #include "reflist.h"␊ |
38 | #include "dirdef.h"␊ |
39 | #include "index.h"␊ |
40 | #include "docsets.h"␊ |
41 | ␊ |
42 | class PageSList;␊ |
43 | class PageSDict;␊ |
44 | class PageDef;␊ |
45 | class SearchIndex;␊ |
46 | class ParserManager;␊ |
47 | class ObjCache;␊ |
48 | class Store;␊ |
49 | class QFileInfo;␊ |
50 | class BufStr;␊ |
51 | ␊ |
52 | typedef QList<QCString> StringList;␊ |
53 | typedef QDict<FileDef> FileDict;␊ |
54 | typedef QDict<GroupDef> GroupDict;␊ |
55 | ␊ |
56 | class StringDict : public QDict<QCString>␊ |
57 | {␊ |
58 | public: ␊ |
59 | StringDict(uint size=17) : QDict<QCString>(size) {}␊ |
60 | virtual ~StringDict() {}␊ |
61 | };␊ |
62 | ␊ |
63 | struct LookupInfo␊ |
64 | {␊ |
65 | LookupInfo() : classDef(0), typeDef(0) {}␊ |
66 | LookupInfo(ClassDef *cd,MemberDef *td,QCString ts,QCString rt) ␊ |
67 | : classDef(cd), typeDef(td), templSpec(ts),resolvedType(rt) {}␊ |
68 | ClassDef *classDef;␊ |
69 | MemberDef *typeDef;␊ |
70 | QCString templSpec;␊ |
71 | QCString resolvedType;␊ |
72 | };␊ |
73 | ␊ |
74 | extern QCString g_spaces;␊ |
75 | ␊ |
76 | /*! \brief This class serves as a namespace for global variables used by doxygen.␊ |
77 | *␊ |
78 | * All fields in this class are public and static, so they can be used directly.␊ |
79 | */␊ |
80 | class Doxygen␊ |
81 | {␊ |
82 | public:␊ |
83 | static ClassSDict *classSDict;␊ |
84 | static ClassSDict *hiddenClasses;␊ |
85 | static PageSDict *exampleSDict;␊ |
86 | static PageSDict *pageSDict;␊ |
87 | static PageDef *mainPage;␊ |
88 | static bool insideMainPage;␊ |
89 | static FileNameDict *includeNameDict;␊ |
90 | static FileNameDict *exampleNameDict;␊ |
91 | static FileNameDict *inputNameDict;␊ |
92 | static FileNameList *inputNameList;␊ |
93 | static FileNameDict *imageNameDict;␊ |
94 | static FileNameDict *dotFileNameDict;␊ |
95 | static FileNameDict *mscFileNameDict;␊ |
96 | static QStrList tagfileList;␊ |
97 | static MemberNameSDict *memberNameSDict;␊ |
98 | static MemberNameSDict *functionNameSDict;␊ |
99 | static FTextStream tagFile;␊ |
100 | static SectionDict sectionDict;␊ |
101 | static StringDict namespaceAliasDict;␊ |
102 | static GroupSDict *groupSDict;␊ |
103 | static NamespaceSDict *namespaceSDict;␊ |
104 | static FormulaList formulaList;␊ |
105 | static FormulaDict formulaDict;␊ |
106 | static FormulaDict formulaNameDict;␊ |
107 | static StringDict tagDestinationDict; ␊ |
108 | static StringDict aliasDict; ␊ |
109 | static QIntDict<MemberGroupInfo> memGrpInfoDict;␊ |
110 | static QDict<void> expandAsDefinedDict;␊ |
111 | static NamespaceDef *globalScope;␊ |
112 | static QDict<RefList> *xrefLists; // array of xref lists: todo, test, bug, deprecated ...␊ |
113 | static QCString htmlFileExtension;␊ |
114 | static bool parseSourcesNeeded;␊ |
115 | static QTime runningTime;␊ |
116 | static SearchIndex *searchIndex;␊ |
117 | static QDict<DefinitionIntf> *symbolMap;␊ |
118 | static bool outputToWizard;␊ |
119 | static QDict<int> *htmlDirMap;␊ |
120 | static QCache<LookupInfo> lookupCache;␊ |
121 | static DirSDict *directories;␊ |
122 | static SDict<DirRelation> dirRelations;␊ |
123 | static ParserManager *parserManager;␊ |
124 | static bool suppressDocWarnings;␊ |
125 | static ObjCache *symbolCache;␊ |
126 | static Store *symbolStorage;␊ |
127 | static QCString objDBFileName;␊ |
128 | static QCString entryDBFileName;␊ |
129 | static bool gatherDefines;␊ |
130 | static bool userComments;␊ |
131 | static IndexList indexList;␊ |
132 | static int subpageNestingLevel;␊ |
133 | static QCString spaces;␊ |
134 | };␊ |
135 | ␊ |
136 | void initDoxygen();␊ |
137 | void readConfiguration(int argc, char **argv);␊ |
138 | void checkConfiguration();␊ |
139 | void adjustConfiguration();␊ |
140 | void searchInputFiles(StringList &inputFiles);␊ |
141 | void parseInput();␊ |
142 | void generateOutput();␊ |
143 | void readAliases();␊ |
144 | void readFormulaRepository();␊ |
145 | int readFileOrDirectory(const char *s,␊ |
146 | FileNameList *fnList,␊ |
147 | FileNameDict *fnDict,␊ |
148 | StringDict *exclDict,␊ |
149 | QStrList *patList,␊ |
150 | QStrList *exclPatList,␊ |
151 | StringList *resultList,␊ |
152 | StringDict *resultDict,␊ |
153 | bool recursive,␊ |
154 | bool errorIfNotExist=TRUE,␊ |
155 | QDict<void> *killDict = 0␊ |
156 | );␊ |
157 | int readDir(QFileInfo *fi,␊ |
158 | FileNameList *fnList,␊ |
159 | FileNameDict *fnDict,␊ |
160 | StringDict *exclDict,␊ |
161 | QStrList *patList,␊ |
162 | QStrList *exclPatList,␊ |
163 | StringList *resultList,␊ |
164 | StringDict *resultDict,␊ |
165 | bool errorIfNotExist,␊ |
166 | bool recursive,␊ |
167 | QDict<void> *killDict␊ |
168 | );␊ |
169 | void copyAndFilterFile(const char *fileName,BufStr &dest);␊ |
170 | ␊ |
171 | #define NEWMATCH␊ |
172 | ␊ |
173 | #endif␊ |
174 |