818:
1190:
125:
81:
33:
518:
256:
to generate diagrams and charts of the code structure. Doxygen can cross reference documentation and code, so that the reader of a document can easily refer to the actual code.
24:
252:. When used as a documentation generator, Doxygen extracts information from specially-formatted comments within the code. When used for analysis, Doxygen uses its
479:
Many programmers avoid using C-style comments and instead use C++ style single line comments. Doxygen accepts comments with additional slash as
Doxygen comments.
399:
Doxygen has built-in support to generate inheritance diagrams for C++ classes. For more advanced diagrams and graphs, Doxygen can use the "dot" tool from
778:, where the main developer, Dimitri van Heesch, contributes under the user name "doxygen". Doxygen is written in C++, and consists of around 300,000
283:, Doxygen extracts documentation from source file comments. In addition to the Javadoc syntax, Doxygen supports the documentation tags used in the
863:
1225:
1109:
411:
The generic syntax of documentation comments is to start a comment with an extra asterisk after the leading comment delimiter '/*':
1215:
798:(or its replacement Bison) is also used, but only for minor tasks; the bulk of language parsing is done by native C++ code. The
1220:
831:
392:
The first version of
Doxygen borrowed code from an early version of DOC++, developed by Roland Wunderling and Malte Zöckler at
950:
925:
823:
442:
Many programmers like to mark the start of each line with space-asterisk-space, as follows, but that is not necessary.
534:
232:
1210:
157:
1235:
1205:
335:
367:
347:
694:
An alternative approach for documenting parameters is shown below. It will produce the same documentation.
292:
104:
351:
72:
264:
174:
860:
930:
339:
327:
300:
80:
884:
841:
245:
241:
162:
393:
1230:
779:
323:
8:
124:
1189:
249:
386:
1046:
877:
791:
790:(or its replacement Flex) is run via approximately 35,000 lines of lex script. The
783:
296:
200:
169:
145:
962:
1070:
867:
935:
799:
787:
150:
1146:
1091:
1199:
260:
1071:"Doxygen::Filter::Perl - A perl code pre-filter for Doxygen - metacpan.org"
1051:
1027:
1003:
926:"Get With the Program: DIY tips for adding coding to your analysis arsenal"
284:
1022:
906:
499:/// @param Description of method's or function's input parameter
355:
998:
874:, From: Dimitri van Heesch, Date: Sun, 26 Oct 1997, Qt-interest Archive
836:
465:* @param Description of method's or function's input parameter
308:
253:
40:
1132:
1164:
872:
Announcing: the first release of
Doxygen, a C++ documentation system.
566:* This program is distributed in the hope that it will be useful, but
428:@param Description of method's or function's input parameter
378:
113:
976:
185:
16:
Free software for generating software documentation from source code
737:
Richer markup is also possible. For instance, add equations using
400:
312:
572:* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
343:
280:
557:* published by the Free Software Foundation; either version 2 of
554:* modify it under the terms of the GNU General Public License as
517:
32:
775:
551:* This program is free software; you can redistribute it and/or
396:. Later, the Doxygen code was rewritten by Dimitri van Heesch.
224:
803:
738:
511:
382:
331:
304:
138:
720:///< Number of milliseconds passed since Jan 1, 1970.>
569:* WITHOUT ANY WARRANTY; without even the implied warranty of
1183:
1117:
1056:
1032:
1008:
984:
958:
795:
493:/// <May span multiple lines or paragraphs as needed>
371:
359:
288:
218:
221:
209:
23:
459:* <May span multiple lines or paragraphs as needed>
374:. Other languages can be supported with additional code.
363:
521:
A screenshot of what the output would look like in HTML
425:<May span multiple lines or paragraphs as needed>
287:
and can generate output in HyperText Markup
Language (
1110:"Automatic Python API documentation generation tools"
560:* the License, or (at your option) any later version.
233:
215:
212:
813:
206:
203:
702:* Constructor that sets the time to a given value.
614:* Constructor that sets the time to a given value.
769:
1197:
662:* @return A time object set to the current time.
620:* @param timemillis is a number of milliseconds
961:). University of New Hampshire. Archived from
752:* An inline equation @f$ e^{\pi i}+1 = 0 @f$
590:* The time class represents a moment of time.
907:"Doxygen Manual: Frequently Asked Questions"
774:The Doxygen sources are currently hosted at
575:* General Public License for more details at
505:/// @return Description of the return value
1188:
123:
79:
31:
22:
471:* @return Description of the return value
516:
484:/// <A short one line description>
1133:"doxypypy: A Doxygen filter for Python"
1086:
1084:
806:and also involves some Python scripts.
578:* https://www.gnu.org/copyleft/gpl.html
434:@return Description of the return value
1198:
923:
832:Comparison of documentation generators
450:* <A short one line description>
1147:"Doxygen Manual: Graphs and diagrams"
948:
1081:
824:Free and open-source software portal
419:<A short one line description>
13:
1167:. June 9, 2021 – via GitHub.
623:* passed since Jan 1, 1970.
265:GNU General Public License version
263:, released under the terms of the
14:
1247:
1175:
1130:
1092:"Doxygen Manual: Getting started"
924:Perkel, Jeffrey M. (2015-11-22).
816:
510:The following illustrates how a
199:
1226:Free software programmed in C++
1216:Free computer programming tools
1157:
1139:
1124:
1102:
1063:
514:source file can be documented.
406:
1039:
1015:
991:
969:
942:
917:
899:
854:
770:Doxygen source and development
490:/// <Longer description>
1:
1221:Free documentation generators
949:Sabin, Mihaela (2015-11-22).
847:
326:supported by Doxygen include
1047:"Documentation: Objective-C"
456:* <Longer description>
293:Microsoft Compiled HTML Help
7:
809:
10:
1252:
758:* A displayed equation: @f
422:<Longer description>
274:
180:
168:
156:
144:
134:
103:
99:
71:
67:
49:
39:
30:
21:
885:"Doxygen release 1.12.0"
866:October 4, 2011, at the
743:
696:
533:* @author John Doe <
524:
481:
444:
413:
301:Portable Document Format
1211:Cross-platform software
981:Free Software Directory
842:Static program analysis
656:* Get the current time.
318:
242:documentation generator
163:Documentation generator
584:* @section DESCRIPTION
522:
55:; 26 years ago
1236:Software that uses Qt
1206:Code navigation tools
861:ANNOUNCE: doxygen 0.1
520:
394:Zuse Institute Berlin
377:Doxygen runs on most
324:Programming languages
86:; 36 days ago
786:, the standard tool
780:source lines of code
53:26 October 1997
1023:"Documentation: C"
545:* @section LICENSE
523:
248:tool for software
45:Dimitri van Heesch
1165:"doxygen/doxygen"
1135:– via PyPI.
938:). The Scientist.
192:
191:
1243:
1192:
1187:
1186:
1184:Official website
1169:
1168:
1161:
1155:
1154:
1143:
1137:
1136:
1128:
1122:
1121:
1106:
1100:
1099:
1088:
1079:
1078:
1067:
1061:
1060:
1043:
1037:
1036:
1019:
1013:
1012:
995:
989:
988:
973:
967:
966:
946:
940:
939:
921:
915:
914:
903:
897:
896:
894:
892:
881:
875:
858:
826:
821:
820:
819:
784:lexical analysis
765:
762:
759:
756:
753:
750:
747:
733:
730:
727:
724:
721:
718:
715:
712:
709:
706:
703:
700:
690:
687:
684:
681:
678:
675:
672:
669:
666:
663:
660:
657:
654:
651:
648:
645:
642:
639:
636:
633:
630:
627:
624:
621:
618:
615:
612:
609:
606:
603:
600:
597:
594:
591:
588:
585:
582:
579:
576:
573:
570:
567:
564:
561:
558:
555:
552:
549:
546:
543:
540:
537:
531:
528:
506:
503:
500:
497:
494:
491:
488:
485:
475:
472:
469:
466:
463:
460:
457:
454:
451:
448:
438:
435:
432:
429:
426:
423:
420:
417:
297:Rich Text Format
291:) as well as in
268:
236:
231:
230:
227:
226:
223:
220:
217:
214:
211:
208:
205:
188:
146:Operating system
127:
122:
119:
117:
115:
94:
92:
87:
83:
63:
61:
56:
35:
26:
19:
18:
1251:
1250:
1246:
1245:
1244:
1242:
1241:
1240:
1196:
1195:
1182:
1181:
1178:
1173:
1172:
1163:
1162:
1158:
1145:
1144:
1140:
1131:Brown, Eric W.
1129:
1125:
1114:python.org wiki
1108:
1107:
1103:
1090:
1089:
1082:
1069:
1068:
1064:
1045:
1044:
1040:
1021:
1020:
1016:
999:"Documentation"
997:
996:
992:
975:
974:
970:
947:
943:
922:
918:
905:
904:
900:
890:
888:
887:. 7 August 2024
883:
882:
878:
868:Wayback Machine
859:
855:
850:
822:
817:
815:
812:
772:
767:
766:
763:
760:
757:
754:
751:
748:
745:
735:
734:
731:
728:
725:
722:
719:
716:
713:
710:
707:
704:
701:
698:
692:
691:
688:
685:
682:
679:
676:
673:
670:
667:
664:
661:
658:
655:
652:
649:
646:
643:
640:
637:
634:
631:
628:
625:
622:
619:
616:
613:
610:
607:
604:
601:
598:
595:
592:
589:
586:
583:
580:
577:
574:
571:
568:
565:
562:
559:
556:
553:
550:
547:
544:
541:
538:
532:
529:
526:
508:
507:
504:
502:/// @param ...
501:
498:
495:
492:
489:
486:
483:
477:
476:
473:
470:
467:
464:
461:
458:
455:
452:
449:
446:
440:
439:
436:
433:
430:
427:
424:
421:
418:
415:
409:
321:
277:
266:
246:static analysis
234:
202:
198:
184:
130:
112:
95:
90:
88:
85:
84:/ 7 August 2024
59:
57:
54:
50:Initial release
17:
12:
11:
5:
1249:
1239:
1238:
1233:
1228:
1223:
1218:
1213:
1208:
1194:
1193:
1177:
1176:External links
1174:
1171:
1170:
1156:
1151:www.doxygen.nl
1138:
1123:
1120:). 2015-11-22.
1101:
1096:www.doxygen.nl
1080:
1062:
1059:). 2015-11-22.
1038:
1035:). 2015-11-22.
1014:
1011:). 2015-11-22.
990:
987:). 2015-11-22.
968:
965:on 2015-11-23.
941:
916:
911:www.doxygen.nl
898:
876:
852:
851:
849:
846:
845:
844:
839:
834:
828:
827:
811:
808:
771:
768:
744:
697:
539:* @version 1.0
525:
482:
445:
414:
408:
405:
320:
317:
276:
273:
190:
189:
182:
178:
177:
172:
166:
165:
160:
154:
153:
151:Cross-platform
148:
142:
141:
136:
132:
131:
129:
128:
109:
107:
101:
100:
97:
96:
77:
75:
73:Stable release
69:
68:
65:
64:
51:
47:
46:
43:
37:
36:
28:
27:
15:
9:
6:
4:
3:
2:
1248:
1237:
1234:
1232:
1229:
1227:
1224:
1222:
1219:
1217:
1214:
1212:
1209:
1207:
1204:
1203:
1201:
1191:
1185:
1180:
1179:
1166:
1160:
1152:
1148:
1142:
1134:
1127:
1119:
1115:
1111:
1105:
1097:
1093:
1087:
1085:
1076:
1072:
1066:
1058:
1054:
1053:
1048:
1042:
1034:
1030:
1029:
1024:
1018:
1010:
1006:
1005:
1000:
994:
986:
982:
978:
972:
964:
960:
956:
955:OpenComputing
952:
945:
937:
933:
932:
931:The Scientist
927:
920:
912:
908:
902:
886:
880:
873:
869:
865:
862:
857:
853:
843:
840:
838:
835:
833:
830:
829:
825:
814:
807:
805:
801:
800:build process
797:
793:
789:
785:
781:
777:
742:
740:
695:
535:
519:
515:
513:
480:
468:* @param ...
443:
412:
404:
402:
397:
395:
390:
388:
384:
380:
375:
373:
369:
365:
361:
357:
353:
349:
345:
341:
337:
333:
329:
325:
316:
314:
310:
306:
302:
298:
294:
290:
286:
282:
272:
270:
262:
261:free software
257:
255:
251:
247:
243:
239:
238:
229:
196:
187:
183:
179:
176:
173:
171:
167:
164:
161:
159:
155:
152:
149:
147:
143:
140:
137:
133:
126:
121:
111:
110:
108:
106:
102:
98:
91:7 August 2024
82:
76:
74:
70:
66:
52:
48:
44:
42:
38:
34:
29:
25:
20:
1159:
1150:
1141:
1126:
1113:
1104:
1095:
1075:metacpan.org
1074:
1065:
1052:Rosetta Code
1050:
1041:
1028:Rosetta Code
1026:
1017:
1004:Rosetta Code
1002:
993:
980:
971:
963:the original
954:
944:
929:
919:
910:
901:
889:. Retrieved
879:
871:
856:
802:is based on
773:
736:
693:
509:
478:
441:
410:
407:Example code
398:
391:
376:
322:
278:
258:
250:source trees
194:
193:
78:1.12.0
41:Developer(s)
1231:Online help
729:// the code
683:// the code
647:// the code
431:@param ...
356:Objective-C
259:Doxygen is
1200:Categories
848:References
837:API Writer
741:commands:
717:timemillis
638:timemillis
309:PostScript
285:Qt toolkit
254:parse tree
186:doxygen.nl
135:Written in
105:Repository
60:1997-10-26
977:"Doxygen"
951:"Doxygen"
381:systems,
379:Unix-like
313:man pages
271:(GPLv2).
891:7 August
864:Archived
810:See also
401:Graphviz
237:-see-jən
120:/doxygen
118:/doxygen
936:Journal
792:parsing
530:* @file
387:Windows
344:Fortran
303:(PDF),
299:(RTF),
295:(CHM),
281:Javadoc
240:) is a
195:Doxygen
181:Website
170:License
89: (
58: (
782:. For
776:GitHub
668:static
605:public
385:, and
370:, and
368:Python
275:Design
267:
114:github
804:CMake
794:tool
739:LaTeX
596:class
383:macOS
305:LaTeX
279:Like
175:GPLv2
1118:Wiki
1057:Wiki
1033:Wiki
1009:Wiki
985:Wiki
959:Wiki
893:2024
796:Yacc
708:Time
671:Time
629:Time
599:Time
536:>
372:VHDL
360:Perl
352:Java
319:Uses
289:HTML
244:and
158:Type
116:.com
788:Lex
746:/**
714:int
699:/**
674:now
653:/**
635:int
611:/**
527:/**
512:C++
496:///
487:///
447:/**
416:/**
364:PHP
348:IDL
332:C++
311:or
235:DOK
139:C++
1202::
1149:.
1112:.
1094:.
1083:^
1073:.
1049:.
1025:.
1001:.
979:.
953:.
928:.
909:.
870:,
764:*/
705:*/
689:};
677:()
665:*/
626:*/
593:*/
474:*/
437:*/
403:.
389:.
366:,
362:,
358:,
354:,
350:,
346:,
342:,
338:,
336:C#
334:,
330:,
315:.
307:,
225:ən
222:dʒ
1153:.
1116:(
1098:.
1077:.
1055:(
1031:(
1007:(
983:(
957:(
934:(
913:.
895:.
761:*
755:*
749:*
732:}
726:{
723:)
711:(
686:}
680:{
659:*
650:}
644:{
641:)
632:(
617:*
608::
602:{
587:*
581:*
563:*
548:*
542:*
462:*
453:*
340:D
328:C
269:2
228:/
219:i
216:s
213:k
210:ɒ
207:d
204:ˈ
201:/
197:(
93:)
62:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.