-#!/usr/bin/perl -w
+#!/usr/bin/env perl
+
+# Copyright (c) 2005, 2012-2014. The SimGrid Team.
+# All rights reserved.
+
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the license (GNU LGPL) which comes with this package.
+
+use warnings;
($#ARGV >= 1) or die "Usage: index_create.pl <input-tag-file> <output-doc-file>";
open OUTPUT,"> $output";
print OUTPUT <<EOF;
-/** \\defgroup API_index Index of the API
- * \\ingroup SimGrid_API
- * \\brief The alphabetical list of all functions, macros and types
- * defined by SimGrid
- *
- * List of all functions, variables, defines, enums, and typedefs with
- * links to the files they belong to.
+This file was generated by tools/doxygen/index_create.pl. DO NOT EDIT.
+
+/** \\defgroup API_index Full Index
+ * \\brief The alphabetical list of all functions, macros and types
+ * defined by SimGrid
+ *
+ * List of all functions, variables, defines, enums, and typedefs with
+ * links to the files they belong to.
+ *
+ * \\htmlonly Although completely useless, the complete list of structures defined can be found <a href="annotated.html">here</a> \\endhtmlonly
+
EOF
-foreach $type qw(define enumeration enumvalue function typedef) {
+foreach $type (qw(define enumeration enumvalue function typedef)) {
if(defined $database{$type}) {
print OUTPUT "<h2>$type</h2> \n <ul>\n";
foreach $name (sort keys %{$database{$type}}) {
if($type eq "function") {
print OUTPUT "\t<LI> $name()</LI>\n";
} else {
- print OUTPUT "\t<LI> #$name</LI>\n";
+ if($type eq "enumeration") {
+ print OUTPUT "\t<LI> ".$name."::EType</LI>\n";
+ }
+ else {
+ print OUTPUT "\t<LI> #$name</LI>\n";
+ }
}
}
print OUTPUT "\n </ul>\n";