View Javadoc
1   /**
2    * The Doxygen Maven Plugin (dmp)
3    *
4    * Copyright (c) 2010, 2011, 2012, 2013, 2014, 2015 by SoftwareEntwicklung Beratung Schulung (SoEBeS)
5    * Copyright (c) 2010, 2011, 2012, 2013, 2014, 2015 by Karl Heinz Marbaise
6    *
7    * Licensed to the Apache Software Foundation (ASF) under one or more
8    * contributor license agreements.  See the NOTICE file distributed with
9    * this work for additional information regarding copyright ownership.
10   * The ASF licenses this file to You under the Apache License, Version 2.0
11   * (the "License"); you may not use this file except in compliance with
12   * the License.  You may obtain a copy of the License at
13   *
14   *    http://www.apache.org/licenses/LICENSE-2.0
15   *
16   * Unless required by applicable law or agreed to in writing, software
17   * distributed under the License is distributed on an "AS IS" BASIS,
18   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19   * See the License for the specific language governing permissions and
20   * limitations under the License.
21   */
22  package com.soebes.maven.plugins.doxygen;
23  
24  public enum DoxygenParameters {
25  	DOXYFILE_ENCODING(
26  			"# This tag specifies the encoding used for all characters in the config file \n"
27  		+	"# that follow. The default is UTF-8 which is also the encoding used for all \n"
28  		+	"# text before the first occurrence of this tag. Doxygen uses libiconv (or the \n"
29  		+	"# iconv built into libc) for the transcoding. See \n"
30  		+	"# http://www.gnu.org/software/libiconv for the list of possible encodings.\n",
31  		DoxygenParameterType.STRING,
32  		"UTF-8"
33  	),
34  	PROJECT_NAME(
35  			"# The PROJECT_NAME tag is a single word (or a sequence of words surrounded \n"
36  		+	"# by quotes) that should identify the project.\n",
37  		DoxygenParameterType.STRING,
38  		"MIGRATION.PARENT"
39  	),
40  	PROJECT_NUMBER(
41  			"# The PROJECT_NUMBER tag can be used to enter a project or revision number. \n"
42  		+	"# This could be handy for archiving the generated documentation or \n"
43  		+	"# if some version control system is used.\n",
44  		DoxygenParameterType.STRING,
45  		null
46  	),
47  	OUTPUT_DIRECTORY(
48  			"# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) \n"
49  		+	"# base path where the generated documentation will be put. \n"
50  		+	"# If a relative path is entered, it will be relative to the location \n"
51  		+	"# where doxygen was started. If left blank the current directory will be used.\n",
52  		DoxygenParameterType.STRING_QUOTED,
53  		null
54  	),
55  	CREATE_SUBDIRS(
56  			"# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create \n"
57  		+	"# 4096 sub-directories (in 2 levels) under the output directory of each output \n"
58  		+	"# format and will distribute the generated files over these directories. \n"
59  		+	"# Enabling this option can be useful when feeding doxygen a huge amount of \n"
60  		+	"# source files, where putting all generated files in the same directory would \n"
61  		+	"# otherwise cause performance problems for the file system.\n",
62  		DoxygenParameterType.BOOLEAN,
63  		"false"
64  	),
65  	OUTPUT_LANGUAGE(
66  			"# The OUTPUT_LANGUAGE tag is used to specify the language in which all \n"
67  		+	"# documentation generated by doxygen is written. Doxygen will use this \n"
68  		+	"# information to generate all constant output in the proper language. \n"
69  		+	"# The default language is English, other supported languages are: \n"
70  		+	"# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, \n"
71  		+	"# Croatian, Czech, Danish, Dutch, Farsi, Finnish, French, German, Greek, \n"
72  		+	"# Hungarian, Italian, Japanese, Japanese-en (Japanese with English messages), \n"
73  		+	"# Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, Polish, \n"
74  		+	"# Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, Slovene, \n"
75  		+	"# Spanish, Swedish, and Ukrainian.\n",
76  		DoxygenParameterType.STRING,
77  		"English"
78  	),
79  	BRIEF_MEMBER_DESC(
80  			"# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will \n"
81  		+	"# include brief member descriptions after the members that are listed in \n"
82  		+	"# the file and class documentation (similar to JavaDoc). \n"
83  		+	"# Set to NO to disable this.\n",
84  		DoxygenParameterType.BOOLEAN,
85  		"true"
86  	),
87  	REPEAT_BRIEF(
88  			"# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend \n"
89  		+	"# the brief description of a member or function before the detailed description. \n"
90  		+	"# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the \n"
91  		+	"# brief descriptions will be completely suppressed.\n",
92  		DoxygenParameterType.BOOLEAN,
93  		"true"
94  	),
95  	ABBREVIATE_BRIEF(
96  			"# This tag implements a quasi-intelligent brief description abbreviator \n"
97  		+	"# that is used to form the text in various listings. Each string \n"
98  		+	"# in this list, if found as the leading text of the brief description, will be \n"
99  		+	"# stripped from the text and the result after processing the whole list, is \n"
100 		+	"# used as the annotated text. Otherwise, the brief description is used as-is. \n"
101 		+	"# If left blank, the following values are used (\"$name\" is automatically \n"
102 		+	"# replaced with the name of the entity): \"The $name class\" \"The $name widget\" \n"
103 		+	"# \"The $name file\" \"is\" \"provides\" \"specifies\" \"contains\" \n"
104 		+	"# \"represents\" \"a\" \"an\" \"the\"\n",
105 		DoxygenParameterType.STRING,
106 		null
107 	),
108 	ALWAYS_DETAILED_SEC(
109 			"# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then \n"
110 		+	"# Doxygen will generate a detailed section even if there is only a brief \n"
111 		+	"# description.\n",
112 		DoxygenParameterType.BOOLEAN,
113 		"false"
114 	),
115 	INLINE_INHERITED_MEMB(
116 			"# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all \n"
117 		+	"# inherited members of a class in the documentation of that class as if those \n"
118 		+	"# members were ordinary class members. Constructors, destructors and assignment \n"
119 		+	"# operators of the base classes will not be shown.\n",
120 		DoxygenParameterType.BOOLEAN,
121 		"false"
122 	),
123 	FULL_PATH_NAMES(
124 			"# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full \n"
125 		+	"# path before files name in the file list and in the header files. If set \n"
126 		+	"# to NO the shortest path that makes the file name unique will be used.\n",
127 		DoxygenParameterType.BOOLEAN,
128 		"true"
129 	),
130 	STRIP_FROM_PATH(
131 			"# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag \n"
132 		+	"# can be used to strip a user-defined part of the path. Stripping is \n"
133 		+	"# only done if one of the specified strings matches the left-hand part of \n"
134 		+	"# the path. The tag can be used to show relative paths in the file list. \n"
135 		+	"# If left blank the directory from which doxygen is run is used as the \n"
136 		+	"# path to strip.\n",
137 		DoxygenParameterType.STRING,
138 		null
139 	),
140 	STRIP_FROM_INC_PATH(
141 			"# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of \n"
142 		+	"# the path mentioned in the documentation of a class, which tells \n"
143 		+	"# the reader which header file to include in order to use a class. \n"
144 		+	"# If left blank only the name of the header file containing the class \n"
145 		+	"# definition is used. Otherwise one should specify the include paths that \n"
146 		+	"# are normally passed to the compiler using the -I flag.\n",
147 		DoxygenParameterType.STRING,
148 		null
149 	),
150 	SHORT_NAMES(
151 			"# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter \n"
152 		+	"# (but less readable) file names. This can be useful is your file systems \n"
153 		+	"# doesn't support long names like on DOS, Mac, or CD-ROM.\n",
154 		DoxygenParameterType.BOOLEAN,
155 		"false"
156 	),
157 	JAVADOC_AUTOBRIEF(
158 			"# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen \n"
159 		+	"# will interpret the first line (until the first dot) of a JavaDoc-style \n"
160 		+	"# comment as the brief description. If set to NO, the JavaDoc \n"
161 		+	"# comments will behave just like regular Qt-style comments \n"
162 		+	"# (thus requiring an explicit @brief command for a brief description.)\n",
163 		DoxygenParameterType.BOOLEAN,
164 		"false"
165 	),
166 	QT_AUTOBRIEF(
167 			"# If the QT_AUTOBRIEF tag is set to YES then Doxygen will \n"
168 		+	"# interpret the first line (until the first dot) of a Qt-style \n"
169 		+	"# comment as the brief description. If set to NO, the comments \n"
170 		+	"# will behave just like regular Qt-style comments (thus requiring \n"
171 		+	"# an explicit \\brief command for a brief description.)\n",
172 		DoxygenParameterType.BOOLEAN,
173 		"false"
174 	),
175 	MULTILINE_CPP_IS_BRIEF(
176 			"# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen \n"
177 		+	"# treat a multi-line C++ special comment block (i.e. a block of //! or /// \n"
178 		+	"# comments) as a brief description. This used to be the default behaviour. \n"
179 		+	"# The new default is to treat a multi-line C++ comment block as a detailed \n"
180 		+	"# description. Set this tag to YES if you prefer the old behaviour instead.\n",
181 		DoxygenParameterType.BOOLEAN,
182 		"false"
183 	),
184 	INHERIT_DOCS(
185 			"# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented \n"
186 		+	"# member inherits the documentation from any documented member that it \n"
187 		+	"# re-implements.\n",
188 		DoxygenParameterType.BOOLEAN,
189 		"true"
190 	),
191 	SEPARATE_MEMBER_PAGES(
192 			"# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce \n"
193 		+	"# a new page for each member. If set to NO, the documentation of a member will \n"
194 		+	"# be part of the file/class/namespace that contains it.\n",
195 		DoxygenParameterType.BOOLEAN,
196 		"false"
197 	),
198 	TAB_SIZE(
199 			"# The TAB_SIZE tag can be used to set the number of spaces in a tab. \n"
200 		+	"# Doxygen uses this value to replace tabs by spaces in code fragments.\n",
201 		DoxygenParameterType.INTEGER,
202 		"8"
203 	),
204 	ALIASES(
205 			"# This tag can be used to specify a number of aliases that acts \n"
206 		+	"# as commands in the documentation. An alias has the form \"name=value\". \n"
207 		+	"# For example adding \"sideeffect=\\par Side Effects:\\n\" will allow you to \n"
208 		+	"# put the command \\sideeffect (or @sideeffect) in the documentation, which \n"
209 		+	"# will result in a user-defined paragraph with heading \"Side Effects:\". \n"
210 		+	"# You can put \\n's in the value part of an alias to insert newlines.\n",
211 		DoxygenParameterType.STRING,
212 		null
213 	),
214 	OPTIMIZE_OUTPUT_FOR_C(
215 			"# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C \n"
216 		+	"# sources only. Doxygen will then generate output that is more tailored for C. \n"
217 		+	"# For instance, some of the names that are used will be different. The list \n"
218 		+	"# of all members will be omitted, etc.\n",
219 		DoxygenParameterType.BOOLEAN,
220 		"false"
221 	),
222 	OPTIMIZE_OUTPUT_JAVA(
223 			"# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java \n"
224 		+	"# sources only. Doxygen will then generate output that is more tailored for \n"
225 		+	"# Java. For instance, namespaces will be presented as packages, qualified \n"
226 		+	"# scopes will look different, etc.\n",
227 		DoxygenParameterType.BOOLEAN,
228 		"false"
229 	),
230 	OPTIMIZE_FOR_FORTRAN(
231 			"# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran \n"
232 		+	"# sources only. Doxygen will then generate output that is more tailored for \n"
233 		+	"# Fortran.\n",
234 		DoxygenParameterType.BOOLEAN,
235 		"false"
236 	),
237 	OPTIMIZE_OUTPUT_VHDL(
238 			"# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL \n"
239 		+	"# sources. Doxygen will then generate output that is tailored for \n"
240 		+	"# VHDL.\n",
241 		DoxygenParameterType.BOOLEAN,
242 		"false"
243 	),
244 	BUILTIN_STL_SUPPORT(
245 			"# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want \n"
246 		+	"# to include (a tag file for) the STL sources as input, then you should \n"
247 		+	"# set this tag to YES in order to let doxygen match functions declarations and \n"
248 		+	"# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. \n"
249 		+	"# func(std::string) {}). This also make the inheritance and collaboration \n"
250 		+	"# diagrams that involve STL classes more complete and accurate.\n",
251 		DoxygenParameterType.BOOLEAN,
252 		"true"
253 	),
254 	CPP_CLI_SUPPORT(
255 			"# If you use Microsoft's C++/CLI language, you should set this option to YES to\n"
256 		+	"# enable parsing support.\n",
257 		DoxygenParameterType.BOOLEAN,
258 		"false"
259 	),
260 	SIP_SUPPORT(
261 			"# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. \n"
262 		+	"# Doxygen will parse them like normal C++ but will assume all classes use public \n"
263 		+	"# instead of private inheritance when no explicit protection keyword is present.\n",
264 		DoxygenParameterType.BOOLEAN,
265 		"false"
266 	),
267 	IDL_PROPERTY_SUPPORT(
268 			"# For Microsoft's IDL there are propget and propput attributes to indicate getter \n"
269 		+	"# and setter methods for a property. Setting this option to YES (the default) \n"
270 		+	"# will make doxygen to replace the get and set methods by a property in the \n"
271 		+	"# documentation. This will only work if the methods are indeed getting or \n"
272 		+	"# setting a simple type. If this is not the case, or you want to show the \n"
273 		+	"# methods anyway, you should set this option to NO.\n",
274 		DoxygenParameterType.BOOLEAN,
275 		"true"
276 	),
277 	DISTRIBUTE_GROUP_DOC(
278 			"# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC \n"
279 		+	"# tag is set to YES, then doxygen will reuse the documentation of the first \n"
280 		+	"# member in the group (if any) for the other members of the group. By default \n"
281 		+	"# all members of a group must be documented explicitly.\n",
282 		DoxygenParameterType.BOOLEAN,
283 		"false"
284 	),
285 	SUBGROUPING(
286 			"# Set the SUBGROUPING tag to YES (the default) to allow class member groups of \n"
287 		+	"# the same type (for instance a group of public functions) to be put as a \n"
288 		+	"# subgroup of that type (e.g. under the Public Functions section). Set it to \n"
289 		+	"# NO to prevent subgrouping. Alternatively, this can be done per class using \n"
290 		+	"# the \\nosubgrouping command.\n",
291 		DoxygenParameterType.BOOLEAN,
292 		"true"
293 	),
294 	TYPEDEF_HIDES_STRUCT(
295 			"# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum \n"
296 		+	"# is documented as struct, union, or enum with the name of the typedef. So \n"
297 		+	"# typedef struct TypeS {} TypeT, will appear in the documentation as a struct \n"
298 		+	"# with name TypeT. When disabled the typedef will appear as a member of a file, \n"
299 		+	"# namespace, or class. And the struct will be named TypeS. This can typically \n"
300 		+	"# be useful for C code in case the coding convention dictates that all compound \n"
301 		+	"# types are typedef'ed and only the typedef is referenced, never the tag name.\n",
302 		DoxygenParameterType.BOOLEAN,
303 		"false"
304 	),
305 	SYMBOL_CACHE_SIZE(
306 			"# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to \n"
307 		+	"# determine which symbols to keep in memory and which to flush to disk.\n"
308 		+	"# When the cache is full, less often used symbols will be written to disk.\n"
309 		+	"# For small to medium size projects (<1000 input files) the default value is \n"
310 		+	"# probably good enough. For larger projects a too small cache size can cause \n"
311 		+	"# doxygen to be busy swapping symbols to and from disk most of the time \n"
312 		+	"# causing a significant performance penality. \n"
313 		+	"# If the system has enough physical memory increasing the cache will improve the \n"
314 		+	"# performance by keeping more symbols in memory. Note that the value works on \n"
315 		+	"# a logarithmic scale so increasing the size by one will rougly double the \n"
316 		+	"# memory usage. The cache size is given by this formula: \n"
317 		+	"# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, \n"
318 		+	"# corresponding to a cache size of 2^16 = 65536 symbols\n",
319 		DoxygenParameterType.INTEGER,
320 		"0"
321 	),
322 	EXTRACT_ALL(
323 			"# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in \n"
324 		+	"# documentation are documented, even if no documentation was available. \n"
325 		+	"# Private class members and static file members will be hidden unless \n"
326 		+	"# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES\n",
327 		DoxygenParameterType.BOOLEAN,
328 		"false"
329 	),
330 	EXTRACT_PRIVATE(
331 			"# If the EXTRACT_PRIVATE tag is set to YES all private members of a class \n"
332 		+	"# will be included in the documentation.\n",
333 		DoxygenParameterType.BOOLEAN,
334 		"false"
335 	),
336 	EXTRACT_STATIC(
337 			"# If the EXTRACT_STATIC tag is set to YES all static members of a file \n"
338 		+	"# will be included in the documentation.\n",
339 		DoxygenParameterType.BOOLEAN,
340 		"false"
341 	),
342 	EXTRACT_LOCAL_CLASSES(
343 			"# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) \n"
344 		+	"# defined locally in source files will be included in the documentation. \n"
345 		+	"# If set to NO only classes defined in header files are included.\n",
346 		DoxygenParameterType.BOOLEAN,
347 		"true"
348 	),
349 	EXTRACT_LOCAL_METHODS(
350 			"# This flag is only useful for Objective-C code. When set to YES local \n"
351 		+	"# methods, which are defined in the implementation section but not in \n"
352 		+	"# the interface are included in the documentation. \n"
353 		+	"# If set to NO (the default) only methods in the interface are included.\n",
354 		DoxygenParameterType.BOOLEAN,
355 		"false"
356 	),
357 	EXTRACT_ANON_NSPACES(
358 			"# If this flag is set to YES, the members of anonymous namespaces will be \n"
359 		+	"# extracted and appear in the documentation as a namespace called \n"
360 		+	"# 'anonymous_namespace{file}', where file will be replaced with the base \n"
361 		+	"# name of the file that contains the anonymous namespace. By default \n"
362 		+	"# anonymous namespace are hidden.\n",
363 		DoxygenParameterType.BOOLEAN,
364 		"false"
365 	),
366 	HIDE_UNDOC_MEMBERS(
367 			"# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all \n"
368 		+	"# undocumented members of documented classes, files or namespaces. \n"
369 		+	"# If set to NO (the default) these members will be included in the \n"
370 		+	"# various overviews, but no documentation section is generated. \n"
371 		+	"# This option has no effect if EXTRACT_ALL is enabled.\n",
372 		DoxygenParameterType.BOOLEAN,
373 		"false"
374 	),
375 	HIDE_UNDOC_CLASSES(
376 			"# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all \n"
377 		+	"# undocumented classes that are normally visible in the class hierarchy. \n"
378 		+	"# If set to NO (the default) these classes will be included in the various \n"
379 		+	"# overviews. This option has no effect if EXTRACT_ALL is enabled.\n",
380 		DoxygenParameterType.BOOLEAN,
381 		"false"
382 	),
383 	HIDE_FRIEND_COMPOUNDS(
384 			"# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all \n"
385 		+	"# friend (class|struct|union) declarations. \n"
386 		+	"# If set to NO (the default) these declarations will be included in the \n"
387 		+	"# documentation.\n",
388 		DoxygenParameterType.BOOLEAN,
389 		"false"
390 	),
391 	HIDE_IN_BODY_DOCS(
392 			"# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any \n"
393 		+	"# documentation blocks found inside the body of a function. \n"
394 		+	"# If set to NO (the default) these blocks will be appended to the \n"
395 		+	"# function's detailed documentation block.\n",
396 		DoxygenParameterType.BOOLEAN,
397 		"false"
398 	),
399 	INTERNAL_DOCS(
400 			"# The INTERNAL_DOCS tag determines if documentation \n"
401 		+	"# that is typed after a \\internal command is included. If the tag is set \n"
402 		+	"# to NO (the default) then the documentation will be excluded. \n"
403 		+	"# Set it to YES to include the internal documentation.\n",
404 		DoxygenParameterType.BOOLEAN,
405 		"false"
406 	),
407 	CASE_SENSE_NAMES(
408 			"# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate \n"
409 		+	"# file names in lower-case letters. If set to YES upper-case letters are also \n"
410 		+	"# allowed. This is useful if you have classes or files whose names only differ \n"
411 		+	"# in case and if your file system supports case sensitive file names. Windows \n"
412 		+	"# and Mac users are advised to set this option to NO.\n",
413 		DoxygenParameterType.BOOLEAN,
414 		"true"
415 	),
416 	HIDE_SCOPE_NAMES(
417 			"# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen \n"
418 		+	"# will show members with their full class and namespace scopes in the \n"
419 		+	"# documentation. If set to YES the scope will be hidden.\n",
420 		DoxygenParameterType.BOOLEAN,
421 		"false"
422 	),
423 	SHOW_INCLUDE_FILES(
424 			"# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen \n"
425 		+	"# will put a list of the files that are included by a file in the documentation \n"
426 		+	"# of that file.\n",
427 		DoxygenParameterType.BOOLEAN,
428 		"true"
429 	),
430 	INLINE_INFO(
431 			"# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] \n"
432 		+	"# is inserted in the documentation for inline members.\n",
433 		DoxygenParameterType.BOOLEAN,
434 		"true"
435 	),
436 	SORT_MEMBER_DOCS(
437 			"# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen \n"
438 		+	"# will sort the (detailed) documentation of file and class members \n"
439 		+	"# alphabetically by member name. If set to NO the members will appear in \n"
440 		+	"# declaration order.\n",
441 		DoxygenParameterType.BOOLEAN,
442 		"true"
443 	),
444 	SORT_BRIEF_DOCS(
445 			"# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the \n"
446 		+	"# brief documentation of file, namespace and class members alphabetically \n"
447 		+	"# by member name. If set to NO (the default) the members will appear in \n"
448 		+	"# declaration order.\n",
449 		DoxygenParameterType.BOOLEAN,
450 		"false"
451 	),
452 	SORT_GROUP_NAMES(
453 			"# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the \n"
454 		+	"# hierarchy of group names into alphabetical order. If set to NO (the default) \n"
455 		+	"# the group names will appear in their defined order.\n",
456 		DoxygenParameterType.BOOLEAN,
457 		"false"
458 	),
459 	SORT_BY_SCOPE_NAME(
460 			"# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be \n"
461 		+	"# sorted by fully-qualified names, including namespaces. If set to \n"
462 		+	"# NO (the default), the class list will be sorted only by class name, \n"
463 		+	"# not including the namespace part. \n"
464 		+	"# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.\n"
465 		+	"# Note: This option applies only to the class list, not to the \n"
466 		+	"# alphabetical list.\n",
467 		DoxygenParameterType.BOOLEAN,
468 		"false"
469 	),
470 	GENERATE_TODOLIST(
471 			"# The GENERATE_TODOLIST tag can be used to enable (YES) or \n"
472 		+	"# disable (NO) the todo list. This list is created by putting \\todo \n"
473 		+	"# commands in the documentation.\n",
474 		DoxygenParameterType.BOOLEAN,
475 		"true"
476 	),
477 	GENERATE_TESTLIST(
478 			"# The GENERATE_TESTLIST tag can be used to enable (YES) or \n"
479 		+	"# disable (NO) the test list. This list is created by putting \\test \n"
480 		+	"# commands in the documentation.\n",
481 		DoxygenParameterType.BOOLEAN,
482 		"true"
483 	),
484 	GENERATE_BUGLIST(
485 			"# The GENERATE_BUGLIST tag can be used to enable (YES) or \n"
486 		+	"# disable (NO) the bug list. This list is created by putting \\bug \n"
487 		+	"# commands in the documentation.\n",
488 		DoxygenParameterType.BOOLEAN,
489 		"true"
490 	),
491 	GENERATE_DEPRECATEDLIST(
492 			"# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or \n"
493 		+	"# disable (NO) the deprecated list. This list is created by putting \n"
494 		+	"# \\deprecated commands in the documentation.\n",
495 		DoxygenParameterType.BOOLEAN,
496 		"true"
497 	),
498 	ENABLED_SECTIONS(
499 			"# The ENABLED_SECTIONS tag can be used to enable conditional \n"
500 		+	"# documentation sections, marked by \\if sectionname ... \\endif.\n",
501 		DoxygenParameterType.STRING,
502 		null
503 	),
504 	MAX_INITIALIZER_LINES(
505 			"# The MAX_INITIALIZER_LINES tag determines the maximum number of lines \n"
506 		+	"# the initial value of a variable or define consists of for it to appear in \n"
507 		+	"# the documentation. If the initializer consists of more lines than specified \n"
508 		+	"# here it will be hidden. Use a value of 0 to hide initializers completely. \n"
509 		+	"# The appearance of the initializer of individual variables and defines in the \n"
510 		+	"# documentation can be controlled using \\showinitializer or \\hideinitializer \n"
511 		+	"# command in the documentation regardless of this setting.\n",
512 		DoxygenParameterType.INTEGER,
513 		"30"
514 	),
515 	SHOW_USED_FILES(
516 			"# Set the SHOW_USED_FILES tag to NO to disable the list of files generated \n"
517 		+	"# at the bottom of the documentation of classes and structs. If set to YES the \n"
518 		+	"# list will mention the files that were used to generate the documentation.\n",
519 		DoxygenParameterType.BOOLEAN,
520 		"true"
521 	),
522 	SHOW_DIRECTORIES(
523 			"# If the sources in your project are distributed over multiple directories \n"
524 		+	"# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy \n"
525 		+	"# in the documentation. The default is NO.\n",
526 		DoxygenParameterType.BOOLEAN,
527 		"true"
528 	),
529 	SHOW_FILES(
530 			"# Set the SHOW_FILES tag to NO to disable the generation of the Files page.\n"
531 		+	"# This will remove the Files entry from the Quick Index and from the \n"
532 		+	"# Folder Tree View (if specified). The default is YES.\n",
533 		DoxygenParameterType.BOOLEAN,
534 		"true"
535 	),
536 	SHOW_NAMESPACES(
537 			"# Set the SHOW_NAMESPACES tag to NO to disable the generation of the \n"
538 		+	"# Namespaces page.  This will remove the Namespaces entry from the Quick Index\n"
539 		+	"# and from the Folder Tree View (if specified). The default is YES.\n",
540 		DoxygenParameterType.BOOLEAN,
541 		"true"
542 	),
543 	FILE_VERSION_FILTER(
544 			"# The FILE_VERSION_FILTER tag can be used to specify a program or script that \n"
545 		+	"# doxygen should invoke to get the current version for each file (typically from \n"
546 		+	"# the version control system). Doxygen will invoke the program by executing (via \n"
547 		+	"# popen()) the command <command> <input-file>, where <command> is the value of \n"
548 		+	"# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file \n"
549 		+	"# provided by doxygen. Whatever the program writes to standard output \n"
550 		+	"# is used as the file version. See the manual for examples.\n",
551 		DoxygenParameterType.STRING,
552 		null
553 	),
554 	LAYOUT_FILE(
555 			"# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by \n"
556 		+	"# doxygen. The layout file controls the global structure of the generated output files \n"
557 		+	"# in an output format independent way. The create the layout file that represents \n"
558 		+	"# doxygen's defaults, run doxygen with the -l option. You can optionally specify a \n"
559 		+	"# file name after the option, if omitted DoxygenLayout.xml will be used as the name \n"
560 		+	"# of the layout file.\n",
561 		DoxygenParameterType.STRING,
562 		null
563 	),
564 	QUIET(
565 			"# The QUIET tag can be used to turn on/off the messages that are generated \n"
566 		+	"# by doxygen. Possible values are YES and NO. If left blank NO is used.\n",
567 		DoxygenParameterType.BOOLEAN,
568 		"true"
569 	),
570 	WARNINGS(
571 			"# The WARNINGS tag can be used to turn on/off the warning messages that are \n"
572 		+	"# generated by doxygen. Possible values are YES and NO. If left blank \n"
573 		+	"# NO is used.\n",
574 		DoxygenParameterType.BOOLEAN,
575 		"true"
576 	),
577 	WARN_IF_UNDOCUMENTED(
578 			"# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings \n"
579 		+	"# for undocumented members. If EXTRACT_ALL is set to YES then this flag will \n"
580 		+	"# automatically be disabled.\n",
581 		DoxygenParameterType.BOOLEAN,
582 		"true"
583 	),
584 	WARN_IF_DOC_ERROR(
585 			"# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for \n"
586 		+	"# potential errors in the documentation, such as not documenting some \n"
587 		+	"# parameters in a documented function, or documenting parameters that \n"
588 		+	"# don't exist or using markup commands wrongly.\n",
589 		DoxygenParameterType.BOOLEAN,
590 		"true"
591 	),
592 	WARN_NO_PARAMDOC(
593 			"# This WARN_NO_PARAMDOC option can be abled to get warnings for \n"
594 		+	"# functions that are documented, but have no documentation for their parameters \n"
595 		+	"# or return value. If set to NO (the default) doxygen will only warn about \n"
596 		+	"# wrong or incomplete parameter documentation, but not about the absence of \n"
597 		+	"# documentation.\n",
598 		DoxygenParameterType.BOOLEAN,
599 		"true"
600 	),
601 	WARN_FORMAT(
602 			"# The WARN_FORMAT tag determines the format of the warning messages that \n"
603 		+	"# doxygen can produce. The string should contain the $file, $line, and $text \n"
604 		+	"# tags, which will be replaced by the file and line number from which the \n"
605 		+	"# warning originated and the warning text. Optionally the format may contain \n"
606 		+	"# $version, which will be replaced by the version of the file (if it could \n"
607 		+	"# be obtained via FILE_VERSION_FILTER)\n",
608 		DoxygenParameterType.STRING,
609 		"$file:$line: $text"
610 	),
611 	WARN_LOGFILE(
612 			"# The WARN_LOGFILE tag can be used to specify a file to which warning \n"
613 		+	"# and error messages should be written. If left blank the output is written \n"
614 		+	"# to stderr.\n",
615 		DoxygenParameterType.STRING,
616 		null
617 	),
618 	INPUT(
619 			"# The INPUT tag can be used to specify the files and/or directories that contain \n"
620 		+	"# documented source files. You may enter file names like \"myfile.cpp\" or \n"
621 		+	"# directories like \"/usr/src/myproject\". Separate the files or directories \n"
622 		+	"# with spaces.\n",
623 		DoxygenParameterType.STRING,
624 		null
625 	),
626 	INPUT_ENCODING(
627 			"# This tag can be used to specify the character encoding of the source files \n"
628 		+	"# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is \n"
629 		+	"# also the default input encoding. Doxygen uses libiconv (or the iconv built \n"
630 		+	"# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for \n"
631 		+	"# the list of possible encodings.\n",
632 		DoxygenParameterType.STRING,
633 		"UTF-8"
634 	),
635 	FILE_PATTERNS(
636 			"# If the value of the INPUT tag contains directories, you can use the \n"
637 		+	"# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp \n"
638 		+	"# and *.h) to filter out the source-files in the directories. If left \n"
639 		+	"# blank the following patterns are tested: \n"
640 		+	"# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx \n"
641 		+	"# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90\n",
642 		DoxygenParameterType.STRING,
643 		"*.doxygen *.doxy *.cpp *.cxx *.hpp *.hxx *.ipp *.ixx *.py *.java"
644 	),
645 	RECURSIVE(
646 			"# The RECURSIVE tag can be used to turn specify whether or not subdirectories \n"
647 		+	"# should be searched for input files as well. Possible values are YES and NO. \n"
648 		+	"# If left blank NO is used.\n",
649 		DoxygenParameterType.BOOLEAN,
650 		"false"
651 	),
652 	EXCLUDE(
653 			"# The EXCLUDE tag can be used to specify files and/or directories that should \n"
654 		+	"# excluded from the INPUT source files. This way you can easily exclude a \n"
655 		+	"# subdirectory from a directory tree whose root is specified with the INPUT tag.\n",
656 		DoxygenParameterType.STRING,
657 		".svn"
658 	),
659 	EXCLUDE_SYMLINKS(
660 			"# The EXCLUDE_SYMLINKS tag can be used select whether or not files or \n"
661 		+	"# directories that are symbolic links (a Unix filesystem feature) are excluded \n"
662 		+	"# from the input.\n",
663 		DoxygenParameterType.BOOLEAN,
664 		"false"
665 	),
666 	EXCLUDE_PATTERNS(
667 			"# If the value of the INPUT tag contains directories, you can use the \n"
668 		+	"# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude \n"
669 		+	"# certain files from those directories. Note that the wildcards are matched \n"
670 		+	"# against the file with absolute path, so to exclude all test directories \n"
671 		+	"# for example use the pattern */test/*\n",
672 		DoxygenParameterType.STRING,
673 		null
674 	),
675 	EXCLUDE_SYMBOLS(
676 			"# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names \n"
677 		+	"# (namespaces, classes, functions, etc.) that should be excluded from the \n"
678 		+	"# output. The symbol name can be a fully qualified name, a word, or if the \n"
679 		+	"# wildcard * is used, a substring. Examples: ANamespace, AClass, \n"
680 		+	"# AClass::ANamespace, ANamespace::*Test\n",
681 		DoxygenParameterType.STRING,
682 		null
683 	),
684 	EXAMPLE_PATH(
685 			"# The EXAMPLE_PATH tag can be used to specify one or more files or \n"
686 		+	"# directories that contain example code fragments that are included (see \n"
687 		+	"# the \\include command).\n",
688 		DoxygenParameterType.STRING,
689 		null
690 	),
691 	EXAMPLE_PATTERNS(
692 			"# If the value of the EXAMPLE_PATH tag contains directories, you can use the \n"
693 		+	"# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp \n"
694 		+	"# and *.h) to filter out the source-files in the directories. If left \n"
695 		+	"# blank all files are included.\n",
696 		DoxygenParameterType.STRING,
697 		null
698 	),
699 	EXAMPLE_RECURSIVE(
700 			"# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be \n"
701 		+	"# searched for input files to be used with the \\include or \\dontinclude \n"
702 		+	"# commands irrespective of the value of the RECURSIVE tag. \n"
703 		+	"# Possible values are YES and NO. If left blank NO is used.\n",
704 		DoxygenParameterType.BOOLEAN,
705 		"false"
706 	),
707 	IMAGE_PATH(
708 			"# The IMAGE_PATH tag can be used to specify one or more files or \n"
709 		+	"# directories that contain image that are included in the documentation (see \n"
710 		+	"# the \\image command).\n",
711 		DoxygenParameterType.STRING,
712 		null
713 	),
714 	INPUT_FILTER(
715 			"# The INPUT_FILTER tag can be used to specify a program that doxygen should \n"
716 		+	"# invoke to filter for each input file. Doxygen will invoke the filter program \n"
717 		+	"# by executing (via popen()) the command <filter> <input-file>, where <filter> \n"
718 		+	"# is the value of the INPUT_FILTER tag, and <input-file> is the name of an \n"
719 		+	"# input file. Doxygen will then use the output that the filter program writes \n"
720 		+	"# to standard output.  If FILTER_PATTERNS is specified, this tag will be \n"
721 		+	"# ignored.\n",
722 		DoxygenParameterType.STRING,
723 		null
724 	),
725 	FILTER_PATTERNS(
726 			"# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern \n"
727 		+	"# basis.  Doxygen will compare the file name with each pattern and apply the \n"
728 		+	"# filter if there is a match.  The filters are a list of the form: \n"
729 		+	"# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further \n"
730 		+	"# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER \n"
731 		+	"# is applied to all files.\n",
732 		DoxygenParameterType.STRING,
733 		null
734 	),
735 	FILTER_SOURCE_FILES(
736 			"# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using \n"
737 		+	"# INPUT_FILTER) will be used to filter the input files when producing source \n"
738 		+	"# files to browse (i.e. when SOURCE_BROWSER is set to YES).\n",
739 		DoxygenParameterType.BOOLEAN,
740 		"false"
741 	),
742 	SOURCE_BROWSER(
743 			"# If the SOURCE_BROWSER tag is set to YES then a list of source files will \n"
744 		+	"# be generated. Documented entities will be cross-referenced with these sources. \n"
745 		+	"# Note: To get rid of all source code in the generated output, make sure also \n"
746 		+	"# VERBATIM_HEADERS is set to NO.\n",
747 		DoxygenParameterType.BOOLEAN,
748 		"true"
749 	),
750 	INLINE_SOURCES(
751 			"# Setting the INLINE_SOURCES tag to YES will include the body \n"
752 		+	"# of functions and classes directly in the documentation.\n",
753 		DoxygenParameterType.BOOLEAN,
754 		"false"
755 	),
756 	STRIP_CODE_COMMENTS(
757 			"# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct \n"
758 		+	"# doxygen to hide any special comment blocks from generated source code \n"
759 		+	"# fragments. Normal C and C++ comments will always remain visible.\n",
760 		DoxygenParameterType.BOOLEAN,
761 		"true"
762 	),
763 	REFERENCED_BY_RELATION(
764 			"# If the REFERENCED_BY_RELATION tag is set to YES \n"
765 		+	"# then for each documented function all documented \n"
766 		+	"# functions referencing it will be listed.\n",
767 		DoxygenParameterType.BOOLEAN,
768 		"false"
769 	),
770 	REFERENCES_RELATION(
771 			"# If the REFERENCES_RELATION tag is set to YES \n"
772 		+	"# then for each documented function all documented entities \n"
773 		+	"# called/used by that function will be listed.\n",
774 		DoxygenParameterType.BOOLEAN,
775 		"false"
776 	),
777 	REFERENCES_LINK_SOURCE(
778 			"# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)\n"
779 		+	"# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from\n"
780 		+	"# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will\n"
781 		+	"# link to the source code.  Otherwise they will link to the documentstion.\n",
782 		DoxygenParameterType.BOOLEAN,
783 		"true"
784 	),
785 	USE_HTAGS(
786 			"# If the USE_HTAGS tag is set to YES then the references to source code \n"
787 		+	"# will point to the HTML generated by the htags(1) tool instead of doxygen \n"
788 		+	"# built-in source browser. The htags tool is part of GNU's global source \n"
789 		+	"# tagging system (see http://www.gnu.org/software/global/global.html). You \n"
790 		+	"# will need version 4.8.6 or higher.\n",
791 		DoxygenParameterType.BOOLEAN,
792 		"false"
793 	),
794 	VERBATIM_HEADERS(
795 			"# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen \n"
796 		+	"# will generate a verbatim copy of the header file for each class for \n"
797 		+	"# which an include is specified. Set to NO to disable this.\n",
798 		DoxygenParameterType.BOOLEAN,
799 		"true"
800 	),
801 	ALPHABETICAL_INDEX(
802 			"# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index \n"
803 		+	"# of all compounds will be generated. Enable this if the project \n"
804 		+	"# contains a lot of classes, structs, unions or interfaces.\n",
805 		DoxygenParameterType.BOOLEAN,
806 		"true"
807 	),
808 	COLS_IN_ALPHA_INDEX(
809 			"# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then \n"
810 		+	"# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns \n"
811 		+	"# in which this list will be split (can be a number in the range [1..20])\n",
812 		DoxygenParameterType.INTEGER,
813 		"5"
814 	),
815 	IGNORE_PREFIX(
816 			"# In case all classes in a project start with a common prefix, all \n"
817 		+	"# classes will be put under the same header in the alphabetical index. \n"
818 		+	"# The IGNORE_PREFIX tag can be used to specify one or more prefixes that \n"
819 		+	"# should be ignored while generating the index headers.\n",
820 		DoxygenParameterType.STRING,
821 		null
822 	),
823 	GENERATE_HTML(
824 			"# If the GENERATE_HTML tag is set to YES (the default) Doxygen will \n"
825 		+	"# generate HTML output.\n",
826 		DoxygenParameterType.BOOLEAN,
827 		"true"
828 	),
829 	HTML_OUTPUT(
830 			"# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. \n"
831 		+	"# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n"
832 		+	"# put in front of it. If left blank `html' will be used as the default path.\n",
833 		DoxygenParameterType.STRING,
834 		"html-doc"
835 	),
836 	HTML_FILE_EXTENSION(
837 			"# The HTML_FILE_EXTENSION tag can be used to specify the file extension for \n"
838 		+	"# each generated HTML page (for example: .htm,.php,.asp). If it is left blank \n"
839 		+	"# doxygen will generate files with .html extension.\n",
840 		DoxygenParameterType.STRING,
841 		".html"
842 	),
843 	HTML_HEADER(
844 			"# The HTML_HEADER tag can be used to specify a personal HTML header for \n"
845 		+	"# each generated HTML page. If it is left blank doxygen will generate a \n"
846 		+	"# standard header.\n",
847 		DoxygenParameterType.STRING,
848 		null
849 	),
850 	HTML_FOOTER(
851 			"# The HTML_FOOTER tag can be used to specify a personal HTML footer for \n"
852 		+	"# each generated HTML page. If it is left blank doxygen will generate a \n"
853 		+	"# standard footer.\n",
854 		DoxygenParameterType.STRING,
855 		null
856 	),
857 	HTML_STYLESHEET(
858 			"# The HTML_STYLESHEET tag can be used to specify a user-defined cascading \n"
859 		+	"# style sheet that is used by each HTML page. It can be used to \n"
860 		+	"# fine-tune the look of the HTML output. If the tag is left blank doxygen \n"
861 		+	"# will generate a default style sheet. Note that doxygen will try to copy \n"
862 		+	"# the style sheet file to the HTML output directory, so don't put your own \n"
863 		+	"# stylesheet in the HTML output directory as well, or it will be erased!\n",
864 		DoxygenParameterType.STRING,
865 		null
866 	),
867 	HTML_ALIGN_MEMBERS(
868 			"# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, \n"
869 		+	"# files or namespaces will be aligned in HTML using tables. If set to \n"
870 		+	"# NO a bullet list will be used.\n",
871 		DoxygenParameterType.BOOLEAN,
872 		"true"
873 	),
874 	HTML_DYNAMIC_SECTIONS(
875 			"# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML \n"
876 		+	"# documentation will contain sections that can be hidden and shown after the \n"
877 		+	"# page has loaded. For this to work a browser that supports \n"
878 		+	"# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox \n"
879 		+	"# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).\n",
880 		DoxygenParameterType.BOOLEAN,
881 		"true"
882 	),
883 	GENERATE_DOCSET(
884 			"# If the GENERATE_DOCSET tag is set to YES, additional index files \n"
885 		+	"# will be generated that can be used as input for Apple's Xcode 3 \n"
886 		+	"# integrated development environment, introduced with OSX 10.5 (Leopard). \n"
887 		+	"# To create a documentation set, doxygen will generate a Makefile in the \n"
888 		+	"# HTML output directory. Running make will produce the docset in that \n"
889 		+	"# directory and running \"make install\" will install the docset in \n"
890 		+	"# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find \n"
891 		+	"# it at startup. \n"
892 		+	"# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information.\n",
893 		DoxygenParameterType.BOOLEAN,
894 		"false"
895 	),
896 	DOCSET_FEEDNAME(
897 			"# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the \n"
898 		+	"# feed. A documentation feed provides an umbrella under which multiple \n"
899 		+	"# documentation sets from a single provider (such as a company or product suite) \n"
900 		+	"# can be grouped.\n",
901 		DoxygenParameterType.STRING,
902 		"Doxygen generated docs"
903 	),
904 	DOCSET_BUNDLE_ID(
905 			"# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that \n"
906 		+	"# should uniquely identify the documentation set bundle. This should be a \n"
907 		+	"# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen \n"
908 		+	"# will append .docset to the name.\n",
909 		DoxygenParameterType.STRING,
910 		"org.doxygen.Project"
911 	),
912 	GENERATE_HTMLHELP(
913 			"# If the GENERATE_HTMLHELP tag is set to YES, additional index files \n"
914 		+	"# will be generated that can be used as input for tools like the \n"
915 		+	"# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) \n"
916 		+	"# of the generated HTML documentation.\n",
917 		DoxygenParameterType.BOOLEAN,
918 		"false"
919 	),
920 	CHM_FILE(
921 			"# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can \n"
922 		+	"# be used to specify the file name of the resulting .chm file. You \n"
923 		+	"# can add a path in front of the file if the result should not be \n"
924 		+	"# written to the html output directory.\n",
925 		DoxygenParameterType.STRING,
926 		null
927 	),
928 	HHC_LOCATION(
929 			"# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can \n"
930 		+	"# be used to specify the location (absolute path including file name) of \n"
931 		+	"# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run \n"
932 		+	"# the HTML help compiler on the generated index.hhp.\n",
933 		DoxygenParameterType.STRING,
934 		null
935 	),
936 	GENERATE_CHI(
937 			"# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag \n"
938 		+	"# controls if a separate .chi index file is generated (YES) or that \n"
939 		+	"# it should be included in the master .chm file (NO).\n",
940 		DoxygenParameterType.BOOLEAN,
941 		"false"
942 	),
943 	CHM_INDEX_ENCODING(
944 			"# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING\n"
945 		+	"# is used to encode HtmlHelp index (hhk), content (hhc) and project file\n"
946 		+	"# content.\n",
947 		DoxygenParameterType.STRING,
948 		null
949 	),
950 	BINARY_TOC(
951 			"# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag \n"
952 		+	"# controls whether a binary table of contents is generated (YES) or a \n"
953 		+	"# normal table of contents (NO) in the .chm file.\n",
954 		DoxygenParameterType.BOOLEAN,
955 		"false"
956 	),
957 	TOC_EXPAND(
958 			"# The TOC_EXPAND flag can be set to YES to add extra items for group members \n"
959 		+	"# to the contents of the HTML help documentation and to the tree view.\n",
960 		DoxygenParameterType.BOOLEAN,
961 		"false"
962 	),
963 	GENERATE_QHP(
964 			"# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER \n"
965 		+	"# are set, an additional index file will be generated that can be used as input for \n"
966 		+	"# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated \n"
967 		+	"# HTML documentation.\n",
968 		DoxygenParameterType.BOOLEAN,
969 		"false"
970 	),
971 	QCH_FILE(
972 			"# If the QHG_LOCATION tag is specified, the QCH_FILE tag can \n"
973 		+	"# be used to specify the file name of the resulting .qch file. \n"
974 		+	"# The path specified is relative to the HTML output folder.\n",
975 		DoxygenParameterType.STRING,
976 		null
977 	),
978 	QHP_NAMESPACE(
979 			"# The QHP_NAMESPACE tag specifies the namespace to use when generating \n"
980 		+	"# Qt Help Project output. For more information please see \n"
981 		+	"# <a href=\"http://doc.trolltech.com/qthelpproject.html#namespace\">Qt Help Project / Namespace</a>.\n",
982 		DoxygenParameterType.STRING,
983 		"org.doxygen.Project"
984 	),
985 	QHP_VIRTUAL_FOLDER(
986 			"# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating \n"
987 		+	"# Qt Help Project output. For more information please see \n"
988 		+	"# <a href=\"http://doc.trolltech.com/qthelpproject.html#virtual-folders\">Qt Help Project / Virtual Folders</a>.\n",
989 		DoxygenParameterType.STRING,
990 		"doc"
991 	),
992 	QHG_LOCATION(
993 			"# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can \n"
994 		+	"# be used to specify the location of Qt's qhelpgenerator. \n"
995 		+	"# If non-empty doxygen will try to run qhelpgenerator on the generated \n"
996 		+	"# .qhp file .\n",
997 		DoxygenParameterType.STRING,
998 		null
999 	),
1000 	DISABLE_INDEX(
1001 			"# The DISABLE_INDEX tag can be used to turn on/off the condensed index at \n"
1002 		+	"# top of each HTML page. The value NO (the default) enables the index and \n"
1003 		+	"# the value YES disables it.\n",
1004 		DoxygenParameterType.BOOLEAN,
1005 		"false"
1006 	),
1007 	ENUM_VALUES_PER_LINE(
1008 			"# This tag can be used to set the number of enum values (range [1..20]) \n"
1009 		+	"# that doxygen will group on one line in the generated HTML documentation.\n",
1010 		DoxygenParameterType.INTEGER,
1011 		"4"
1012 	),
1013 	GENERATE_TREEVIEW(
1014 			"# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index\n"
1015 		+	"# structure should be generated to display hierarchical information.\n"
1016 		+	"# If the tag value is set to FRAME, a side panel will be generated\n"
1017 		+	"# containing a tree-like index structure (just like the one that \n"
1018 		+	"# is generated for HTML Help). For this to work a browser that supports \n"
1019 		+	"# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, \n"
1020 		+	"# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are \n"
1021 		+	"# probably better off using the HTML help feature. Other possible values \n"
1022 		+	"# for this tag are: HIERARCHIES, which will generate the Groups, Directories,\n"
1023 		+	"# and Class Hierarchy pages using a tree view instead of an ordered list;\n"
1024 		+	"# ALL, which combines the behavior of FRAME and HIERARCHIES; and NONE, which\n"
1025 		+	"# disables this behavior completely. For backwards compatibility with previous\n"
1026 		+	"# releases of Doxygen, the values YES and NO are equivalent to FRAME and NONE\n"
1027 		+	"# respectively.\n",
1028 		DoxygenParameterType.STRING,
1029 		"ALL"
1030 	),
1031 	TREEVIEW_WIDTH(
1032 			"# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be \n"
1033 		+	"# used to set the initial width (in pixels) of the frame in which the tree \n"
1034 		+	"# is shown.\n",
1035 		DoxygenParameterType.INTEGER,
1036 		"250"
1037 	),
1038 	FORMULA_FONTSIZE(
1039 			"# Use this tag to change the font size of Latex formulas included \n"
1040 		+	"# as images in the HTML documentation. The default is 10. Note that \n"
1041 		+	"# when you change the font size after a successful doxygen run you need \n"
1042 		+	"# to manually remove any form_*.png images from the HTML output directory \n"
1043 		+	"# to force them to be regenerated.\n",
1044 		DoxygenParameterType.INTEGER,
1045 		"10"
1046 	),
1047 	GENERATE_LATEX(
1048 			"# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will \n"
1049 		+	"# generate Latex output.\n",
1050 		DoxygenParameterType.BOOLEAN,
1051 		"false"
1052 	),
1053 	LATEX_OUTPUT(
1054 			"# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. \n"
1055 		+	"# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n"
1056 		+	"# put in front of it. If left blank `latex' will be used as the default path.\n",
1057 		DoxygenParameterType.STRING,
1058 		"latex"
1059 	),
1060 	LATEX_CMD_NAME(
1061 			"# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be \n"
1062 		+	"# invoked. If left blank `latex' will be used as the default command name.\n",
1063 		DoxygenParameterType.STRING,
1064 		"latex"
1065 	),
1066 	MAKEINDEX_CMD_NAME(
1067 			"# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to \n"
1068 		+	"# generate index for LaTeX. If left blank `makeindex' will be used as the \n"
1069 		+	"# default command name.\n",
1070 		DoxygenParameterType.STRING,
1071 		"makeindex"
1072 	),
1073 	COMPACT_LATEX(
1074 			"# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact \n"
1075 		+	"# LaTeX documents. This may be useful for small projects and may help to \n"
1076 		+	"# save some trees in general.\n",
1077 		DoxygenParameterType.BOOLEAN,
1078 		"false"
1079 	),
1080 	PAPER_TYPE(
1081 			"# The PAPER_TYPE tag can be used to set the paper type that is used \n"
1082 		+	"# by the printer. Possible values are: a4, a4wide, letter, legal and \n"
1083 		+	"# executive. If left blank a4wide will be used.\n",
1084 		DoxygenParameterType.STRING,
1085 		"a4wide"
1086 	),
1087 	EXTRA_PACKAGES(
1088 			"# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX \n"
1089 		+	"# packages that should be included in the LaTeX output.\n",
1090 		DoxygenParameterType.STRING,
1091 		null
1092 	),
1093 	LATEX_HEADER(
1094 			"# The LATEX_HEADER tag can be used to specify a personal LaTeX header for \n"
1095 		+	"# the generated latex document. The header should contain everything until \n"
1096 		+	"# the first chapter. If it is left blank doxygen will generate a \n"
1097 		+	"# standard header. Notice: only use this tag if you know what you are doing!\n",
1098 		DoxygenParameterType.STRING,
1099 		null
1100 	),
1101 	PDF_HYPERLINKS(
1102 			"# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated \n"
1103 		+	"# is prepared for conversion to pdf (using ps2pdf). The pdf file will \n"
1104 		+	"# contain links (just like the HTML output) instead of page references \n"
1105 		+	"# This makes the output suitable for online browsing using a pdf viewer.\n",
1106 		DoxygenParameterType.BOOLEAN,
1107 		"true"
1108 	),
1109 	USE_PDFLATEX(
1110 			"# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of \n"
1111 		+	"# plain latex in the generated Makefile. Set this option to YES to get a \n"
1112 		+	"# higher quality PDF documentation.\n",
1113 		DoxygenParameterType.BOOLEAN,
1114 		"true"
1115 	),
1116 	LATEX_BATCHMODE(
1117 			"# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\\\batchmode. \n"
1118 		+	"# command to the generated LaTeX files. This will instruct LaTeX to keep \n"
1119 		+	"# running if errors occur, instead of asking the user for help. \n"
1120 		+	"# This option is also used when generating formulas in HTML.\n",
1121 		DoxygenParameterType.BOOLEAN,
1122 		"false"
1123 	),
1124 	LATEX_HIDE_INDICES(
1125 			"# If LATEX_HIDE_INDICES is set to YES then doxygen will not \n"
1126 		+	"# include the index chapters (such as File Index, Compound Index, etc.) \n"
1127 		+	"# in the output.\n",
1128 		DoxygenParameterType.BOOLEAN,
1129 		"false"
1130 	),
1131 	GENERATE_RTF(
1132 			"# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output \n"
1133 		+	"# The RTF output is optimized for Word 97 and may not look very pretty with \n"
1134 		+	"# other RTF readers or editors.\n",
1135 		DoxygenParameterType.BOOLEAN,
1136 		"false"
1137 	),
1138 	RTF_OUTPUT(
1139 			"# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. \n"
1140 		+	"# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n"
1141 		+	"# put in front of it. If left blank `rtf' will be used as the default path.\n",
1142 		DoxygenParameterType.STRING,
1143 		"rtf"
1144 	),
1145 	COMPACT_RTF(
1146 			"# If the COMPACT_RTF tag is set to YES Doxygen generates more compact \n"
1147 		+	"# RTF documents. This may be useful for small projects and may help to \n"
1148 		+	"# save some trees in general.\n",
1149 		DoxygenParameterType.BOOLEAN,
1150 		"false"
1151 	),
1152 	RTF_HYPERLINKS(
1153 			"# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated \n"
1154 		+	"# will contain hyperlink fields. The RTF file will \n"
1155 		+	"# contain links (just like the HTML output) instead of page references. \n"
1156 		+	"# This makes the output suitable for online browsing using WORD or other \n"
1157 		+	"# programs which support those fields. \n"
1158 		+	"# Note: wordpad (write) and others do not support links.\n",
1159 		DoxygenParameterType.BOOLEAN,
1160 		"false"
1161 	),
1162 	RTF_STYLESHEET_FILE(
1163 			"# Load stylesheet definitions from file. Syntax is similar to doxygen's \n"
1164 		+	"# config file, i.e. a series of assignments. You only have to provide \n"
1165 		+	"# replacements, missing definitions are set to their default value.\n",
1166 		DoxygenParameterType.STRING,
1167 		null
1168 	),
1169 	RTF_EXTENSIONS_FILE(
1170 			"# Set optional variables used in the generation of an rtf document. \n"
1171 		+	"# Syntax is similar to doxygen's config file.\n",
1172 		DoxygenParameterType.STRING,
1173 		null
1174 	),
1175 	GENERATE_MAN(
1176 			"# If the GENERATE_MAN tag is set to YES (the default) Doxygen will \n"
1177 		+	"# generate man pages\n",
1178 		DoxygenParameterType.BOOLEAN,
1179 		"false"
1180 	),
1181 	MAN_OUTPUT(
1182 			"# The MAN_OUTPUT tag is used to specify where the man pages will be put. \n"
1183 		+	"# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n"
1184 		+	"# put in front of it. If left blank `man' will be used as the default path.\n",
1185 		DoxygenParameterType.STRING,
1186 		"man"
1187 	),
1188 	MAN_EXTENSION(
1189 			"# The MAN_EXTENSION tag determines the extension that is added to \n"
1190 		+	"# the generated man pages (default is the subroutine's section .3)\n",
1191 		DoxygenParameterType.STRING,
1192 		".3"
1193 	),
1194 	MAN_LINKS(
1195 			"# If the MAN_LINKS tag is set to YES and Doxygen generates man output, \n"
1196 		+	"# then it will generate one additional man file for each entity \n"
1197 		+	"# documented in the real man page(s). These additional files \n"
1198 		+	"# only source the real man page, but without them the man command \n"
1199 		+	"# would be unable to find the correct page. The default is NO.\n",
1200 		DoxygenParameterType.BOOLEAN,
1201 		"false"
1202 	),
1203 	GENERATE_XML(
1204 			"# If the GENERATE_XML tag is set to YES Doxygen will \n"
1205 		+	"# generate an XML file that captures the structure of \n"
1206 		+	"# the code including all documentation.\n",
1207 		DoxygenParameterType.BOOLEAN,
1208 		"false"
1209 	),
1210 	XML_OUTPUT(
1211 			"# The XML_OUTPUT tag is used to specify where the XML pages will be put. \n"
1212 		+	"# If a relative path is entered the value of OUTPUT_DIRECTORY will be \n"
1213 		+	"# put in front of it. If left blank `xml' will be used as the default path.\n",
1214 		DoxygenParameterType.STRING,
1215 		"xml"
1216 	),
1217 	XML_SCHEMA(
1218 			"# The XML_SCHEMA tag can be used to specify an XML schema, \n"
1219 		+	"# which can be used by a validating XML parser to check the \n"
1220 		+	"# syntax of the XML files.\n",
1221 		DoxygenParameterType.STRING,
1222 		null
1223 	),
1224 	XML_DTD(
1225 			"# The XML_DTD tag can be used to specify an XML DTD, \n"
1226 		+	"# which can be used by a validating XML parser to check the \n"
1227 		+	"# syntax of the XML files.\n",
1228 		DoxygenParameterType.STRING,
1229 		null
1230 	),
1231 	XML_PROGRAMLISTING(
1232 			"# If the XML_PROGRAMLISTING tag is set to YES Doxygen will \n"
1233 		+	"# dump the program listings (including syntax highlighting \n"
1234 		+	"# and cross-referencing information) to the XML output. Note that \n"
1235 		+	"# enabling this will significantly increase the size of the XML output.\n",
1236 		DoxygenParameterType.BOOLEAN,
1237 		"true"
1238 	),
1239 	GENERATE_AUTOGEN_DEF(
1240 			"# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will \n"
1241 		+	"# generate an AutoGen Definitions (see autogen.sf.net) file \n"
1242 		+	"# that captures the structure of the code including all \n"
1243 		+	"# documentation. Note that this feature is still experimental \n"
1244 		+	"# and incomplete at the moment.\n",
1245 		DoxygenParameterType.BOOLEAN,
1246 		"false"
1247 	),
1248 	GENERATE_PERLMOD(
1249 			"# If the GENERATE_PERLMOD tag is set to YES Doxygen will \n"
1250 		+	"# generate a Perl module file that captures the structure of \n"
1251 		+	"# the code including all documentation. Note that this \n"
1252 		+	"# feature is still experimental and incomplete at the \n"
1253 		+	"# moment.\n",
1254 		DoxygenParameterType.BOOLEAN,
1255 		"false"
1256 	),
1257 	PERLMOD_LATEX(
1258 			"# If the PERLMOD_LATEX tag is set to YES Doxygen will generate \n"
1259 		+	"# the necessary Makefile rules, Perl scripts and LaTeX code to be able \n"
1260 		+	"# to generate PDF and DVI output from the Perl module output.\n",
1261 		DoxygenParameterType.BOOLEAN,
1262 		"false"
1263 	),
1264 	PERLMOD_PRETTY(
1265 			"# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be \n"
1266 		+	"# nicely formatted so it can be parsed by a human reader.  This is useful \n"
1267 		+	"# if you want to understand what is going on.  On the other hand, if this \n"
1268 		+	"# tag is set to NO the size of the Perl module output will be much smaller \n"
1269 		+	"# and Perl will parse it just the same.\n",
1270 		DoxygenParameterType.BOOLEAN,
1271 		"true"
1272 	),
1273 	PERLMOD_MAKEVAR_PREFIX(
1274 			"# The names of the make variables in the generated doxyrules.make file \n"
1275 		+	"# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. \n"
1276 		+	"# This is useful so different doxyrules.make files included by the same \n"
1277 		+	"# Makefile don't overwrite each other's variables.\n",
1278 		DoxygenParameterType.STRING,
1279 		null
1280 	),
1281 	ENABLE_PREPROCESSING(
1282 			"# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will \n"
1283 		+	"# evaluate all C-preprocessor directives found in the sources and include \n"
1284 		+	"# files.\n",
1285 		DoxygenParameterType.BOOLEAN,
1286 		"true"
1287 	),
1288 	MACRO_EXPANSION(
1289 			"# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro \n"
1290 		+	"# names in the source code. If set to NO (the default) only conditional \n"
1291 		+	"# compilation will be performed. Macro expansion can be done in a controlled \n"
1292 		+	"# way by setting EXPAND_ONLY_PREDEF to YES.\n",
1293 		DoxygenParameterType.BOOLEAN,
1294 		"false"
1295 	),
1296 	EXPAND_ONLY_PREDEF(
1297 			"# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES \n"
1298 		+	"# then the macro expansion is limited to the macros specified with the \n"
1299 		+	"# PREDEFINED and EXPAND_AS_DEFINED tags.\n",
1300 		DoxygenParameterType.BOOLEAN,
1301 		"false"
1302 	),
1303 	SEARCH_INCLUDES(
1304 			"# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files \n"
1305 		+	"# in the INCLUDE_PATH (see below) will be search if a #include is found.\n",
1306 		DoxygenParameterType.BOOLEAN,
1307 		"true"
1308 	),
1309 	INCLUDE_PATH(
1310 			"# The INCLUDE_PATH tag can be used to specify one or more directories that \n"
1311 		+	"# contain include files that are not input files but should be processed by \n"
1312 		+	"# the preprocessor.\n",
1313 		DoxygenParameterType.STRING,
1314 		null
1315 	),
1316 	INCLUDE_FILE_PATTERNS(
1317 			"# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard \n"
1318 		+	"# patterns (like *.h and *.hpp) to filter out the header-files in the \n"
1319 		+	"# directories. If left blank, the patterns specified with FILE_PATTERNS will \n"
1320 		+	"# be used.\n",
1321 		DoxygenParameterType.STRING,
1322 		null
1323 	),
1324 	PREDEFINED(
1325 			"# The PREDEFINED tag can be used to specify one or more macro names that \n"
1326 		+	"# are defined before the preprocessor is started (similar to the -D option of \n"
1327 		+	"# gcc). The argument of the tag is a list of macros of the form: name \n"
1328 		+	"# or name=definition (no spaces). If the definition and the = are \n"
1329 		+	"# omitted =1 is assumed. To prevent a macro definition from being \n"
1330 		+	"# undefined via #undef or recursively expanded use the := operator \n"
1331 		+	"# instead of the = operator.\n",
1332 		DoxygenParameterType.STRING,
1333 		null
1334 	),
1335 	EXPAND_AS_DEFINED(
1336 			"# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then \n"
1337 		+	"# this tag can be used to specify a list of macro names that should be expanded. \n"
1338 		+	"# The macro definition that is found in the sources will be used. \n"
1339 		+	"# Use the PREDEFINED tag if you want to use a different macro definition.\n",
1340 		DoxygenParameterType.STRING,
1341 		null
1342 	),
1343 	SKIP_FUNCTION_MACROS(
1344 			"# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then \n"
1345 		+	"# doxygen's preprocessor will remove all function-like macros that are alone \n"
1346 		+	"# on a line, have an all uppercase name, and do not end with a semicolon. Such \n"
1347 		+	"# function macros are typically used for boiler-plate code, and will confuse \n"
1348 		+	"# the parser if not removed.\n",
1349 		DoxygenParameterType.BOOLEAN,
1350 		"true"
1351 	),
1352 	TAGFILES(
1353 			"# The TAGFILES option can be used to specify one or more tagfiles. \n"
1354 		+	"# Optionally an initial location of the external documentation \n"
1355 		+	"# can be added for each tagfile. The format of a tag file without \n"
1356 		+	"# this location is as follows: \n"
1357 		+	"# TAGFILES = file1 file2 ... \n"
1358 		+	"# Adding location for the tag files is done as follows: \n"
1359 		+	"# TAGFILES = file1=loc1 \"file2 = loc2\" ... \n"
1360 		+	"# where \"loc1\" and \"loc2\" can be relative or absolute paths or \n"
1361 		+	"# URLs. If a location is present for each tag, the installdox tool \n"
1362 		+	"# does not have to be run to correct the links.\n"
1363 		+	"# Note that each tag file must have a unique name\n"
1364 		+	"# (where the name does NOT include the path)\n"
1365 		+	"# If a tag file is not located in the directory in which doxygen \n"
1366 		+	"# is run, you must also specify the path to the tagfile here.\n",
1367 		DoxygenParameterType.STRING,
1368 		null
1369 	),
1370 	GENERATE_TAGFILE(
1371 			"# When a file name is specified after GENERATE_TAGFILE, doxygen will create \n"
1372 		+	"# a tag file that is based on the input files it reads.\n",
1373 		DoxygenParameterType.STRING,
1374 		null
1375 	),
1376 	ALLEXTERNALS(
1377 			"# If the ALLEXTERNALS tag is set to YES all external classes will be listed \n"
1378 		+	"# in the class index. If set to NO only the inherited external classes \n"
1379 		+	"# will be listed.\n",
1380 		DoxygenParameterType.BOOLEAN,
1381 		"false"
1382 	),
1383 	EXTERNAL_GROUPS(
1384 			"# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed \n"
1385 		+	"# in the modules index. If set to NO, only the current project's groups will \n"
1386 		+	"# be listed.\n",
1387 		DoxygenParameterType.BOOLEAN,
1388 		"true"
1389 	),
1390 	PERL_PATH(
1391 			"# The PERL_PATH should be the absolute path and name of the perl script \n"
1392 		+	"# interpreter (i.e. the result of `which perl').\n",
1393 		DoxygenParameterType.STRING,
1394 		"/usr/bin/perl"
1395 	),
1396 	CLASS_DIAGRAMS(
1397 			"# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will \n"
1398 		+	"# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base \n"
1399 		+	"# or super classes. Setting the tag to NO turns the diagrams off. Note that \n"
1400 		+	"# this option is superseded by the HAVE_DOT option below. This is only a \n"
1401 		+	"# fallback. It is recommended to install and use dot, since it yields more \n"
1402 		+	"# powerful graphs.\n",
1403 		DoxygenParameterType.BOOLEAN,
1404 		"true"
1405 	),
1406 	MSCGEN_PATH(
1407 			"# You can define message sequence charts within doxygen comments using the \\msc \n"
1408 		+	"# command. Doxygen will then run the mscgen tool (see \n"
1409 		+	"# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the \n"
1410 		+	"# documentation. The MSCGEN_PATH tag allows you to specify the directory where \n"
1411 		+	"# the mscgen tool resides. If left empty the tool is assumed to be found in the \n"
1412 		+	"# default search path.\n",
1413 		DoxygenParameterType.STRING,
1414 		null
1415 	),
1416 	HIDE_UNDOC_RELATIONS(
1417 			"# If set to YES, the inheritance and collaboration graphs will hide \n"
1418 		+	"# inheritance and usage relations if the target is undocumented \n"
1419 		+	"# or is not a class.\n",
1420 		DoxygenParameterType.BOOLEAN,
1421 		"true"
1422 	),
1423 	HAVE_DOT(
1424 			"# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is \n"
1425 		+	"# available from the path. This tool is part of Graphviz, a graph visualization \n"
1426 		+	"# toolkit from AT&T and Lucent Bell Labs. The other options in this section \n"
1427 		+	"# have no effect if this option is set to NO (the default)\n",
1428 		DoxygenParameterType.BOOLEAN,
1429 		"true"
1430 	),
1431 	DOT_FONTNAME(
1432 			"# By default doxygen will write a font called FreeSans.ttf to the output \n"
1433 		+	"# directory and reference it in all dot files that doxygen generates. This \n"
1434 		+	"# font does not include all possible unicode characters however, so when you need \n"
1435 		+	"# these (or just want a differently looking font) you can specify the font name \n"
1436 		+	"# using DOT_FONTNAME. You need need to make sure dot is able to find the font, \n"
1437 		+	"# which can be done by putting it in a standard location or by setting the \n"
1438 		+	"# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory \n"
1439 		+	"# containing the font.\n",
1440 		DoxygenParameterType.STRING,
1441 		"FreeSans"
1442 	),
1443 	DOT_FONTSIZE(
1444 			"# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. \n"
1445 		+	"# The default size is 10pt.\n",
1446 		DoxygenParameterType.INTEGER,
1447 		"10"
1448 	),
1449 	DOT_FONTPATH(
1450 			"# By default doxygen will tell dot to use the output directory to look for the \n"
1451 		+	"# FreeSans.ttf font (which doxygen will put there itself). If you specify a \n"
1452 		+	"# different font using DOT_FONTNAME you can set the path where dot \n"
1453 		+	"# can find it using this tag.\n",
1454 		DoxygenParameterType.STRING,
1455 		null
1456 	),
1457 	CLASS_GRAPH(
1458 			"# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen \n"
1459 		+	"# will generate a graph for each documented class showing the direct and \n"
1460 		+	"# indirect inheritance relations. Setting this tag to YES will force the \n"
1461 		+	"# the CLASS_DIAGRAMS tag to NO.\n",
1462 		DoxygenParameterType.BOOLEAN,
1463 		"true"
1464 	),
1465 	COLLABORATION_GRAPH(
1466 			"# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen \n"
1467 		+	"# will generate a graph for each documented class showing the direct and \n"
1468 		+	"# indirect implementation dependencies (inheritance, containment, and \n"
1469 		+	"# class references variables) of the class with other documented classes.\n",
1470 		DoxygenParameterType.BOOLEAN,
1471 		"true"
1472 	),
1473 	GROUP_GRAPHS(
1474 			"# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen \n"
1475 		+	"# will generate a graph for groups, showing the direct groups dependencies\n",
1476 		DoxygenParameterType.BOOLEAN,
1477 		"true"
1478 	),
1479 	UML_LOOK(
1480 			"# If the UML_LOOK tag is set to YES doxygen will generate inheritance and \n"
1481 		+	"# collaboration diagrams in a style similar to the OMG's Unified Modeling \n"
1482 		+	"# Language.\n",
1483 		DoxygenParameterType.BOOLEAN,
1484 		"false"
1485 	),
1486 	TEMPLATE_RELATIONS(
1487 			"# If set to YES, the inheritance and collaboration graphs will show the \n"
1488 		+	"# relations between templates and their instances.\n",
1489 		DoxygenParameterType.BOOLEAN,
1490 		"false"
1491 	),
1492 	INCLUDE_GRAPH(
1493 			"# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT \n"
1494 		+	"# tags are set to YES then doxygen will generate a graph for each documented \n"
1495 		+	"# file showing the direct and indirect include dependencies of the file with \n"
1496 		+	"# other documented files.\n",
1497 		DoxygenParameterType.BOOLEAN,
1498 		"true"
1499 	),
1500 	INCLUDED_BY_GRAPH(
1501 			"# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and \n"
1502 		+	"# HAVE_DOT tags are set to YES then doxygen will generate a graph for each \n"
1503 		+	"# documented header file showing the documented files that directly or \n"
1504 		+	"# indirectly include this file.\n",
1505 		DoxygenParameterType.BOOLEAN,
1506 		"true"
1507 	),
1508 	CALL_GRAPH(
1509 			"# If the CALL_GRAPH and HAVE_DOT options are set to YES then \n"
1510 		+	"# doxygen will generate a call dependency graph for every global function \n"
1511 		+	"# or class method. Note that enabling this option will significantly increase \n"
1512 		+	"# the time of a run. So in most cases it will be better to enable call graphs \n"
1513 		+	"# for selected functions only using the \\callgraph command.\n",
1514 		DoxygenParameterType.BOOLEAN,
1515 		"false"
1516 	),
1517 	CALLER_GRAPH(
1518 			"# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then \n"
1519 		+	"# doxygen will generate a caller dependency graph for every global function \n"
1520 		+	"# or class method. Note that enabling this option will significantly increase \n"
1521 		+	"# the time of a run. So in most cases it will be better to enable caller \n"
1522 		+	"# graphs for selected functions only using the \\callergraph command.\n",
1523 		DoxygenParameterType.BOOLEAN,
1524 		"false"
1525 	),
1526 	GRAPHICAL_HIERARCHY(
1527 			"# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen \n"
1528 		+	"# will graphical hierarchy of all classes instead of a textual one.\n",
1529 		DoxygenParameterType.BOOLEAN,
1530 		"true"
1531 	),
1532 	DIRECTORY_GRAPH(
1533 			"# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES \n"
1534 		+	"# then doxygen will show the dependencies a directory has on other directories \n"
1535 		+	"# in a graphical way. The dependency relations are determined by the #include\n"
1536 		+	"# relations between the files in the directories.\n",
1537 		DoxygenParameterType.BOOLEAN,
1538 		"true"
1539 	),
1540 	DOT_IMAGE_FORMAT(
1541 			"# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images \n"
1542 		+	"# generated by dot. Possible values are png, jpg, or gif\n"
1543 		+	"# If left blank png will be used.\n",
1544 		DoxygenParameterType.STRING,
1545 		"png"
1546 	),
1547 	DOT_PATH(
1548 			"# The tag DOT_PATH can be used to specify the path where the dot tool can be \n"
1549 		+	"# found. If left blank, it is assumed the dot tool can be found in the path.\n",
1550 		DoxygenParameterType.STRING,
1551 		"/usr/bin"
1552 	),
1553 	DOTFILE_DIRS(
1554 			"# The DOTFILE_DIRS tag can be used to specify one or more directories that \n"
1555 		+	"# contain dot files that are included in the documentation (see the \n"
1556 		+	"# \\dotfile command).\n",
1557 		DoxygenParameterType.STRING,
1558 		null
1559 	),
1560 	DOT_GRAPH_MAX_NODES(
1561 			"# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of \n"
1562 		+	"# nodes that will be shown in the graph. If the number of nodes in a graph \n"
1563 		+	"# becomes larger than this value, doxygen will truncate the graph, which is \n"
1564 		+	"# visualized by representing a node as a red box. Note that doxygen if the \n"
1565 		+	"# number of direct children of the root node in a graph is already larger than \n"
1566 		+	"# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note \n"
1567 		+	"# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.\n",
1568 		DoxygenParameterType.INTEGER,
1569 		"50"
1570 	),
1571 	MAX_DOT_GRAPH_DEPTH(
1572 			"# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the \n"
1573 		+	"# graphs generated by dot. A depth value of 3 means that only nodes reachable \n"
1574 		+	"# from the root by following a path via at most 3 edges will be shown. Nodes \n"
1575 		+	"# that lay further from the root node will be omitted. Note that setting this \n"
1576 		+	"# option to 1 or 2 may greatly reduce the computation time needed for large \n"
1577 		+	"# code bases. Also note that the size of a graph can be further restricted by \n"
1578 		+	"# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.\n",
1579 		DoxygenParameterType.INTEGER,
1580 		"0"
1581 	),
1582 	DOT_TRANSPARENT(
1583 			"# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent \n"
1584 		+	"# background. This is disabled by default, because dot on Windows does not \n"
1585 		+	"# seem to support this out of the box. Warning: Depending on the platform used, \n"
1586 		+	"# enabling this option may lead to badly anti-aliased labels on the edges of \n"
1587 		+	"# a graph (i.e. they become hard to read).\n",
1588 		DoxygenParameterType.BOOLEAN,
1589 		"true"
1590 	),
1591 	DOT_MULTI_TARGETS(
1592 			"# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output \n"
1593 		+	"# files in one run (i.e. multiple -o and -T options on the command line). This \n"
1594 		+	"# makes dot run faster, but since only newer versions of dot (>1.8.10) \n"
1595 		+	"# support this, this feature is disabled by default.\n",
1596 		DoxygenParameterType.BOOLEAN,
1597 		"true"
1598 	),
1599 	GENERATE_LEGEND(
1600 			"# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will \n"
1601 		+	"# generate a legend page explaining the meaning of the various boxes and \n"
1602 		+	"# arrows in the dot generated graphs.\n",
1603 		DoxygenParameterType.BOOLEAN,
1604 		"true"
1605 	),
1606 	DOT_CLEANUP(
1607 			"# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will \n"
1608 		+	"# remove the intermediate dot files that are used to generate \n"
1609 		+	"# the various graphs.\n",
1610 		DoxygenParameterType.BOOLEAN,
1611 		"true"
1612 	),
1613 	SEARCHENGINE(
1614 			"# The SEARCHENGINE tag specifies whether or not a search engine should be \n"
1615 		+	"# used. If set to NO the values of all tags below this one will be ignored.\n",
1616 		DoxygenParameterType.BOOLEAN,
1617 		"false"
1618 	),
1619 	;
1620 	
1621 	private String description;
1622 	private DoxygenParameterType type;
1623 	private String defaultValue;
1624 
1625 	private DoxygenParameters(String description, DoxygenParameterType type, String defaultValue) {
1626 		this.description = description;
1627 		this.type = type;
1628 		this.defaultValue = defaultValue;
1629 	}
1630 
1631 	public String getDescription() {
1632 		return description;
1633 	}
1634 
1635 	public DoxygenParameterType getType() {
1636 		return type;
1637 	}
1638 
1639 	public String getDefaultValue() {
1640 		return defaultValue;
1641 	}
1642 }