summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/Makefile94
-rw-r--r--examples/Makefile.windows93
-rw-r--r--examples/afterdoc.cfg6
-rw-r--r--examples/afterdoc.h18
-rw-r--r--examples/author.cfg6
-rw-r--r--examples/author.cpp14
-rw-r--r--examples/autolink.cfg6
-rw-r--r--examples/autolink.cpp99
-rw-r--r--examples/class.cfg6
-rw-r--r--examples/class.h11
-rw-r--r--examples/define.cfg7
-rw-r--r--examples/define.h11
-rw-r--r--examples/enum.cfg6
-rw-r--r--examples/enum.h17
-rw-r--r--examples/example.cfg7
-rw-r--r--examples/example.cpp19
-rw-r--r--examples/example.tag2
-rw-r--r--examples/example_test.cpp5
-rw-r--r--examples/file.cfg6
-rw-r--r--examples/file.h10
-rw-r--r--examples/func.cfg6
-rw-r--r--examples/func.h21
-rw-r--r--examples/include.cfg7
-rw-r--r--examples/include.cpp22
-rw-r--r--examples/jdstyle.cfg6
-rw-r--r--examples/jdstyle.cpp66
-rw-r--r--examples/overload.cfg6
-rw-r--r--examples/overload.cpp25
-rw-r--r--examples/page.cfg6
-rw-r--r--examples/page.doc12
-rw-r--r--examples/par.cfg6
-rw-r--r--examples/par.cpp9
-rw-r--r--examples/qtstyle.cfg6
-rw-r--r--examples/qtstyle.cpp65
-rw-r--r--examples/relates.cfg6
-rw-r--r--examples/relates.cpp24
-rw-r--r--examples/resdefine.cfg6
-rw-r--r--examples/resdefine.cpp21
-rw-r--r--examples/restypedef.cfg6
-rw-r--r--examples/restypedef.cpp25
-rw-r--r--examples/structcmd.cfg6
-rw-r--r--examples/structcmd.h57
-rw-r--r--examples/tag.cfg8
-rw-r--r--examples/tag.cpp9
-rw-r--r--examples/templ.cfg6
-rw-r--r--examples/templ.cpp37
46 files changed, 917 insertions, 0 deletions
diff --git a/examples/Makefile b/examples/Makefile
new file mode 100644
index 0000000..dd97c2c
--- /dev/null
+++ b/examples/Makefile
@@ -0,0 +1,94 @@
+include ../Makefile.config
+DOXYDIR = ../bin
+
+all: class/html/index.html \
+ define/html/index.html \
+ enum/html/index.html \
+ file/html/index.html \
+ func/html/index.html \
+ page/html/index.html \
+ relates/html/index.html \
+ author/html/index.html \
+ par/html/index.html \
+ overload/html/index.html \
+ example/html/index.html \
+ include/html/index.html \
+ qtstyle/html/index.html \
+ jdstyle/html/index.html \
+ structcmd/html/index.html \
+ autolink/html/index.html \
+ resdefine/html/index.html \
+ restypedef/html/index.html \
+ afterdoc/html/index.html \
+ template/html/index.html \
+ tag/html/index.html
+
+clean:
+ rm -rf class define enum file func page relates author \
+ par overload example include qtstyle jdstyle structcmd \
+ autolink tag resdefine restypedef afterdoc template
+
+class/html/index.html: class.h class.cfg
+ $(DOXYDIR)/doxygen class.cfg
+
+define/html/index.html: define.h define.cfg
+ $(DOXYDIR)/doxygen define.cfg
+
+enum/html/index.html: enum.h enum.cfg
+ $(DOXYDIR)/doxygen enum.cfg
+
+file/html/index.html: file.h file.cfg
+ $(DOXYDIR)/doxygen file.cfg
+
+func/html/index.html: func.h func.cfg
+ $(DOXYDIR)/doxygen func.cfg
+
+page/html/index.html: page.doc page.cfg
+ $(DOXYDIR)/doxygen page.cfg
+
+relates/html/index.html: relates.cpp relates.cfg
+ $(DOXYDIR)/doxygen relates.cfg
+
+author/html/index.html: author.cpp author.cfg
+ $(DOXYDIR)/doxygen author.cfg
+
+par/html/index.html: par.cpp par.cfg
+ $(DOXYDIR)/doxygen par.cfg
+
+overload/html/index.html: overload.cpp overload.cfg
+ $(DOXYDIR)/doxygen overload.cfg
+
+example/html/index.html: example.cpp example_test.cpp example.cfg
+ $(DOXYDIR)/doxygen example.cfg
+
+include/html/index.html: include.cpp example_test.cpp include.cfg
+ $(DOXYDIR)/doxygen include.cfg
+
+qtstyle/html/index.html: qtstyle.cpp qtstyle.cfg
+ $(DOXYDIR)/doxygen qtstyle.cfg
+
+jdstyle/html/index.html: jdstyle.cpp jdstyle.cfg
+ $(DOXYDIR)/doxygen jdstyle.cfg
+
+structcmd/html/index.html: structcmd.h structcmd.cfg
+ $(DOXYDIR)/doxygen structcmd.cfg
+
+autolink/html/index.html: autolink.cpp autolink.cfg
+ $(DOXYDIR)/doxygen autolink.cfg
+
+tag/html/index.html: tag.cpp tag.cfg
+ $(DOXYDIR)/doxygen tag.cfg
+ sed -e "1,1s.perl.$(PERL).g" tag/html/installdox >tag/html/installdox.perl
+ cd tag/html ; $(PERL) installdox.perl -lexample.tag@../../example/html
+
+resdefine/html/index.html: resdefine.cpp resdefine.cfg
+ $(DOXYDIR)/doxygen resdefine.cfg
+
+restypedef/html/index.html: restypedef.cpp restypedef.cfg
+ $(DOXYDIR)/doxygen restypedef.cfg
+
+afterdoc/html/index.html: afterdoc.h afterdoc.cfg
+ $(DOXYDIR)/doxygen afterdoc.cfg
+
+template/html/index.html: templ.cpp templ.cfg
+ $(DOXYDIR)/doxygen templ.cfg
diff --git a/examples/Makefile.windows b/examples/Makefile.windows
new file mode 100644
index 0000000..da7cd09
--- /dev/null
+++ b/examples/Makefile.windows
@@ -0,0 +1,93 @@
+DOXYDIR = ..\bin
+
+all: class/html/index.html \
+ define/html/index.html \
+ enum/html/index.html \
+ file/html/index.html \
+ func/html/index.html \
+ page/html/index.html \
+ relates/html/index.html \
+ author/html/index.html \
+ par/html/index.html \
+ overload/html/index.html \
+ example/html/index.html \
+ include/html/index.html \
+ qtstyle/html/index.html \
+ jdstyle/html/index.html \
+ structcmd/html/index.html \
+ autolink/html/index.html \
+ tag/html/index.html \
+ resdefine/html/index.html \
+ restypedef/html/index.html \
+ afterdoc/html/index.html
+
+clean:
+ deltree /y class define enum file
+ deltree /y func page relates author
+ deltree /y par overload example include qtstyle
+ deltree /y jdstyle structcmd autolink tag resdefine
+ deltree /y restypedef
+
+class/html/index.html: class.h class.cfg
+ $(DOXYDIR)\doxygen class.cfg
+
+define/html/index.html: define.h define.cfg
+ $(DOXYDIR)\doxygen define.cfg
+
+enum/html/index.html: enum.h enum.cfg
+ $(DOXYDIR)\doxygen enum.cfg
+
+file/html/index.html: file.h file.cfg
+ $(DOXYDIR)\doxygen file.cfg
+
+func/html/index.html: func.h func.cfg
+ $(DOXYDIR)\doxygen func.cfg
+
+page/html/index.html: page.doc page.cfg
+ $(DOXYDIR)\doxygen page.cfg
+
+relates/html/index.html: relates.cpp relates.cfg
+ $(DOXYDIR)\doxygen relates.cfg
+
+author/html/index.html: author.cpp author.cfg
+ $(DOXYDIR)\doxygen author.cfg
+
+par/html/index.html: par.cpp par.cfg
+ $(DOXYDIR)\doxygen par.cfg
+
+overload/html/index.html: overload.cpp overload.cfg
+ $(DOXYDIR)\doxygen overload.cfg
+
+example/html/index.html: example.cpp example_test.cpp example.cfg
+ $(DOXYDIR)\doxygen example.cfg
+
+include/html/index.html: include.cpp example_test.cpp include.cfg
+ $(DOXYDIR)\doxygen include.cfg
+
+qtstyle/html/index.html: qtstyle.cpp qtstyle.cfg
+ $(DOXYDIR)\doxygen qtstyle.cfg
+
+jdstyle/html/index.html: jdstyle.cpp jdstyle.cfg
+ $(DOXYDIR)\doxygen jdstyle.cfg
+
+structcmd/html/index.html: structcmd.h structcmd.cfg
+ $(DOXYDIR)\doxygen structcmd.cfg
+
+autolink/html/index.html: autolink.cpp autolink.cfg
+ $(DOXYDIR)\doxygen autolink.cfg
+
+tag/html/index.html: tag.cpp tag.cfg
+ $(DOXYDIR)\doxygen tag.cfg
+ cd tag\html
+ echo perl installdox -lexample.tag@../../example/html >runperl.bat
+ runperl.bat
+ cd ..\..
+
+resdefine/html/index.html: resdefine.cpp resdefine.cfg
+ $(DOXYDIR)\doxygen resdefine.cfg
+
+restypedef/html/index.html: restypedef.cpp restypedef.cfg
+ $(DOXYDIR)\doxygen restypedef.cfg
+
+afterdoc/html/index.html: afterdoc.h afterdoc.cfg
+ $(DOXYDIR)\doxygen afterdoc.cfg
diff --git a/examples/afterdoc.cfg b/examples/afterdoc.cfg
new file mode 100644
index 0000000..9ebe07a
--- /dev/null
+++ b/examples/afterdoc.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "AfterDocs"
+OUTPUT_DIRECTORY = afterdoc
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = afterdoc.h
+QUIET = YES
diff --git a/examples/afterdoc.h b/examples/afterdoc.h
new file mode 100644
index 0000000..907dabe
--- /dev/null
+++ b/examples/afterdoc.h
@@ -0,0 +1,18 @@
+/*! A test class */
+
+class Test
+{
+ public:
+ /** An enum type.
+ * The documentation block cannot be put after the enum!
+ */
+ enum EnumType
+ {
+ int EVal1, /**< enum value 1 */
+ int EVal2 /**< enum value 2 */
+ };
+ void member(); //!< a member function.
+
+ protected:
+ int value; /*!< an integer value */
+};
diff --git a/examples/author.cfg b/examples/author.cfg
new file mode 100644
index 0000000..f099903
--- /dev/null
+++ b/examples/author.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Author Command"
+OUTPUT_DIRECTORY = author
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = author.cpp
+QUIET = YES
diff --git a/examples/author.cpp b/examples/author.cpp
new file mode 100644
index 0000000..ce1c58c
--- /dev/null
+++ b/examples/author.cpp
@@ -0,0 +1,14 @@
+/*! \class WindowsNT
+ * \brief Windows Nice Try.
+ * \author Bill Gates
+ * \author Several hundred furry animals gathered in a cave and grooving
+ * with a pit.
+ * \version 4.0
+ * \date 1996-1998
+ * \bug It crashes a lot and requires huge amounts of memory.
+ * \bug The class introduces the more bugs, the longer it is used.
+ * \warning This class may explode in your face.
+ * \warning If you inherit anything from this class, you're doomed.
+ */
+
+class WindowsNT {};
diff --git a/examples/autolink.cfg b/examples/autolink.cfg
new file mode 100644
index 0000000..ff77f83
--- /dev/null
+++ b/examples/autolink.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Automatic link generation"
+OUTPUT_DIRECTORY = autolink
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = autolink.cpp
+QUIET = YES
diff --git a/examples/autolink.cpp b/examples/autolink.cpp
new file mode 100644
index 0000000..924256b
--- /dev/null
+++ b/examples/autolink.cpp
@@ -0,0 +1,99 @@
+/*! \file autolink.cpp
+ Testing automatic link generation.
+
+ A link to a member of the Test class: Test::member,
+
+ More specific links to the each of the overloaded members:
+ Test::member(int) and Test#member(int,int)
+
+ A link to a protected member variable of Test: Test#var,
+
+ A link to the global enumeration type #GlobEnum.
+
+ A link to the define #ABS(x).
+
+ A link to the destructor of the Test class: Test::~Test,
+
+ A link to the typedef ::B.
+
+ A link to the enumeration type Test::EType
+
+ A link to some enumeration values Test::Val1 and ::GVal2
+*/
+
+/*!
+ Since this documentation block belongs to the class Test no link to
+ Test is generated.
+
+ Two ways to link to a constructor are: #Test and Test().
+
+ Links to the destructor are: #~Test and ~Test().
+
+ A link to a member in this class: member().
+
+ More specific links to the each of the overloaded members:
+ member(int) and member(int,int).
+
+ A link to the variable #var.
+
+ A link to the global typedef ::B.
+
+ A link to the global enumeration type #GlobEnum.
+
+ A link to the define ABS(x).
+
+ A link to a variable \link #var using another text\endlink as a link.
+
+ A link to the enumeration type #EType.
+
+ A link to some enumeration values: ::Val1 and ::GVal1.
+
+ And last but not least a link to a file: autolink.cpp.
+
+ \sa Inside a see also section any word is checked, so EType,
+ Val1, GVal1, ~Test and member will be replaced by links in HTML.
+*/
+
+class Test
+{
+ public:
+ Test(); //!< constructor
+ ~Test(); //!< destructor
+ void member(int); /**< A member function. Details. */
+ void member(int,int); /**< An overloaded member function. Details */
+
+ /** An enum type. More details */
+ enum EType {
+ Val1, /**< enum value 1 */
+ Val2 /**< enum value 2 */
+ };
+
+ protected:
+ int var; /**< A member variable */
+};
+
+/*! details. */
+Test::Test() { }
+
+/*! details. */
+Test::~Test() { }
+
+/*! A global variable. */
+int globVar;
+
+/*! A global enum. */
+enum GlobEnum {
+ GVal1, /*!< global enum value 1 */
+ GVal2 /*!< global enum value 2 */
+ };
+
+/*!
+ * A macro definition.
+ */
+#define ABS(x) (((x)>0)?(x):-(x))
+
+typedef Test B;
+
+/*! \fn typedef Test B
+ * A type definition.
+ */
diff --git a/examples/class.cfg b/examples/class.cfg
new file mode 100644
index 0000000..dfc59eb
--- /dev/null
+++ b/examples/class.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Class Command"
+OUTPUT_DIRECTORY = class
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = class.h
+QUIET = YES
diff --git a/examples/class.h b/examples/class.h
new file mode 100644
index 0000000..e5c4e2d
--- /dev/null
+++ b/examples/class.h
@@ -0,0 +1,11 @@
+/* A dummy class */
+
+class Test
+{
+}
+
+/*! \class Test class.h inc/class.h
+ * \brief This is a test class.
+ *
+ * Some details about the Test class
+ */
diff --git a/examples/define.cfg b/examples/define.cfg
new file mode 100644
index 0000000..4960748
--- /dev/null
+++ b/examples/define.cfg
@@ -0,0 +1,7 @@
+PROJECT_NAME = "Define Command"
+OUTPUT_DIRECTORY = define
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = define.h
+ENABLE_PREPROCESSING = YES
+QUIET = YES
diff --git a/examples/define.h b/examples/define.h
new file mode 100644
index 0000000..9a8e4d0
--- /dev/null
+++ b/examples/define.h
@@ -0,0 +1,11 @@
+/*! \file define.h
+ \brief testing defines
+
+ This is to test the documentation of defines.
+*/
+
+/*! \def ABS(x)
+ The define ABS computes the absolute value of its argument \a x.
+*/
+
+#define ABS(x) (((x)>0)?(x):-(x))
diff --git a/examples/enum.cfg b/examples/enum.cfg
new file mode 100644
index 0000000..b38291a
--- /dev/null
+++ b/examples/enum.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Enum Command"
+OUTPUT_DIRECTORY = enum
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = enum.h
+QUIET = YES
diff --git a/examples/enum.h b/examples/enum.h
new file mode 100644
index 0000000..1586074
--- /dev/null
+++ b/examples/enum.h
@@ -0,0 +1,17 @@
+class Test
+{
+ public:
+ enum TEnum { Val1, Val2 };
+};
+
+/*! \class Test
+ * The class description.
+ */
+
+/*! \enum Test::TEnum
+ * A description of the enum type.
+ */
+
+/*! \var Test::TEnum Test::Val1
+ * The description of the first enum value.
+ */
diff --git a/examples/example.cfg b/examples/example.cfg
new file mode 100644
index 0000000..a30b3ff
--- /dev/null
+++ b/examples/example.cfg
@@ -0,0 +1,7 @@
+PROJECT_NAME = "Example Command"
+OUTPUT_DIRECTORY = example
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = example.cpp
+EXAMPLE_PATH = example_test.cpp
+QUIET = YES
diff --git a/examples/example.cpp b/examples/example.cpp
new file mode 100644
index 0000000..230d6ec
--- /dev/null
+++ b/examples/example.cpp
@@ -0,0 +1,19 @@
+/** A Test class.
+ * More details about this class.
+ */
+
+class Test
+{
+ public:
+ /** An example member function.
+ * More details about this function.
+ */
+ void example();
+};
+
+void Test::example() {}
+
+/** \example example_test.cpp
+ * This is an example of how to use the Test class.
+ * More details about this example.
+ */
diff --git a/examples/example.tag b/examples/example.tag
new file mode 100644
index 0000000..3998b90
--- /dev/null
+++ b/examples/example.tag
@@ -0,0 +1,2 @@
+>Test:
+example a0 "()"
diff --git a/examples/example_test.cpp b/examples/example_test.cpp
new file mode 100644
index 0000000..a7e1643
--- /dev/null
+++ b/examples/example_test.cpp
@@ -0,0 +1,5 @@
+void main()
+{
+ Test t;
+ t.example();
+}
diff --git a/examples/file.cfg b/examples/file.cfg
new file mode 100644
index 0000000..52b766a
--- /dev/null
+++ b/examples/file.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "File Command"
+OUTPUT_DIRECTORY = file
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = file.h
+QUIET = YES
diff --git a/examples/file.h b/examples/file.h
new file mode 100644
index 0000000..8dff6cb
--- /dev/null
+++ b/examples/file.h
@@ -0,0 +1,10 @@
+/** \file file.h
+ * A brief file description.
+ * A more elaborated file description.
+ */
+
+/**
+ * A global integer value.
+ * More details about this value.
+ */
+extern int globalValue;
diff --git a/examples/func.cfg b/examples/func.cfg
new file mode 100644
index 0000000..44d67c6
--- /dev/null
+++ b/examples/func.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Fn Command"
+OUTPUT_DIRECTORY = func
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = func.h
+QUIET = YES
diff --git a/examples/func.h b/examples/func.h
new file mode 100644
index 0000000..b335448
--- /dev/null
+++ b/examples/func.h
@@ -0,0 +1,21 @@
+class Test
+{
+ public:
+ const char *member(char,int) throw(std::out_of_range);
+};
+
+const char *Test::member(char c,int n) throw(std::out_of_range) {}
+
+/*! \class Test
+ * \brief Test class.
+ *
+ * Details about Test.
+ */
+
+/*! \fn const char *Test::member(char c,int n)
+ * \brief A member function.
+ * \param c a character.
+ * \param n an integer.
+ * \exception std::out_of_range parameter is out of range.
+ * \return a character pointer.
+ */
diff --git a/examples/include.cfg b/examples/include.cfg
new file mode 100644
index 0000000..c4f997e
--- /dev/null
+++ b/examples/include.cfg
@@ -0,0 +1,7 @@
+PROJECT_NAME = "Include Command"
+OUTPUT_DIRECTORY = include
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = include.cpp
+EXAMPLE_PATH = example_test.cpp
+QUIET = YES
diff --git a/examples/include.cpp b/examples/include.cpp
new file mode 100644
index 0000000..c50ab96
--- /dev/null
+++ b/examples/include.cpp
@@ -0,0 +1,22 @@
+
+/*! A test class. */
+
+class Test
+{
+ public:
+ /// a member function
+ void example();
+};
+
+/*! \page example
+ * \dontinclude example_test.cpp
+ * Our main function starts like this:
+ * \skip main
+ * \until {
+ * First we create a object \c t of the Test class.
+ * \skipline Test
+ * Then we call the example member function
+ * \line example
+ * After that our little test routine ends.
+ * \line }
+ */
diff --git a/examples/jdstyle.cfg b/examples/jdstyle.cfg
new file mode 100644
index 0000000..833a4aa
--- /dev/null
+++ b/examples/jdstyle.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "JavaDoc Style"
+OUTPUT_DIRECTORY = jdstyle
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = jdstyle.cpp
+QUIET = YES
diff --git a/examples/jdstyle.cpp b/examples/jdstyle.cpp
new file mode 100644
index 0000000..bbd2149
--- /dev/null
+++ b/examples/jdstyle.cpp
@@ -0,0 +1,66 @@
+/**
+ * A test class. A more elaborate class description.
+ */
+
+class Test
+{
+ public:
+
+ /**
+ * An enum.
+ * More detailed enum description.
+ */
+
+ enum TEnum {
+ TVal1, /**< enum value TVal1. */
+ TVal2, /**< enum value TVal2. */
+ TVal3 /**< enum value TVal3. */
+ }
+ *enumPtr, /**< enum pointer. Details. */
+ enumVar; /**< enum variable. Details. */
+
+ /**
+ * A constructor.
+ * A more elaborate description of the constructor.
+ */
+ Test();
+
+ /**
+ * A destructor.
+ * A more elaborate description of the destructor.
+ */
+ ~Test();
+
+ /**
+ * a normal member taking two arguments and returning an integer value.
+ * @param a an integer argument.
+ * @param s a constant chararcter pointer.
+ * @see Test()
+ * @see ~Test()
+ * @see testMeToo()
+ * @see publicVar()
+ * @return The test results
+ */
+ int testMe(int a,const char *s);
+
+ /**
+ * A pure virtual member.
+ * @see testMe()
+ * @param c1 the first argument.
+ * @param c2 the second argument.
+ */
+ virtual void testMeToo(char c1,char c2) = 0;
+
+ /**
+ * a public variable.
+ * Details.
+ */
+ int publicVar;
+
+ /**
+ * a function variable.
+ * Details.
+ */
+ int (*handler)(int a,int b);
+};
+
diff --git a/examples/overload.cfg b/examples/overload.cfg
new file mode 100644
index 0000000..690edae
--- /dev/null
+++ b/examples/overload.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Overloaded Command"
+OUTPUT_DIRECTORY = overload
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = overload.cpp
+QUIET = YES
diff --git a/examples/overload.cpp b/examples/overload.cpp
new file mode 100644
index 0000000..02bcced
--- /dev/null
+++ b/examples/overload.cpp
@@ -0,0 +1,25 @@
+class Test
+{
+ public:
+ void drawRect(int,int,int,int);
+ void drawRect(const Rect &r);
+};
+
+void Test::drawRect(int x,int y,int w,int h) {}
+void Test::drawRect(const Rect &r) {}
+
+/*! \class Test
+ * \brief A short description.
+ *
+ * More text.
+ */
+
+/*! \fn void Test::drawRect(int x,int y,int w,int h)
+ * This command draws a rectangle with a left upper corner at ( \a x , \a y ),
+ * width \a w and height \a h.
+ */
+
+/*!
+ * \overload void Test::drawRect(const Rect &r)
+ */
+
diff --git a/examples/page.cfg b/examples/page.cfg
new file mode 100644
index 0000000..40a8869
--- /dev/null
+++ b/examples/page.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Page Command"
+OUTPUT_DIRECTORY = page
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = page.doc
+QUIET = YES
diff --git a/examples/page.doc b/examples/page.doc
new file mode 100644
index 0000000..41c9e02
--- /dev/null
+++ b/examples/page.doc
@@ -0,0 +1,12 @@
+/*! \page page1 A documentation page
+ This page contains the subsections \ref subsection1 and \ref subsection2.
+ For more info see section \ref page2.
+ \subsection subsection1 The first subsection
+ Text.
+ \subsection subsection2 The second subsection
+ More text.
+*/
+
+/*! \page page2 Another page
+ Even more info.
+*/
diff --git a/examples/par.cfg b/examples/par.cfg
new file mode 100644
index 0000000..76dab9f
--- /dev/null
+++ b/examples/par.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Par Command"
+OUTPUT_DIRECTORY = par
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = par.cpp
+QUIET = YES
diff --git a/examples/par.cpp b/examples/par.cpp
new file mode 100644
index 0000000..144d1af
--- /dev/null
+++ b/examples/par.cpp
@@ -0,0 +1,9 @@
+/*! \class Test
+ * Normal text.
+ * \par User defined paragraph:
+ * Contents of the paragraph.
+ *
+ * More normal text.
+ */
+
+class Test {};
diff --git a/examples/qtstyle.cfg b/examples/qtstyle.cfg
new file mode 100644
index 0000000..6d20b53
--- /dev/null
+++ b/examples/qtstyle.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Qt Style"
+OUTPUT_DIRECTORY = qtstyle
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = qtstyle.cpp
+QUIET = YES
diff --git a/examples/qtstyle.cpp b/examples/qtstyle.cpp
new file mode 100644
index 0000000..de5ad34
--- /dev/null
+++ b/examples/qtstyle.cpp
@@ -0,0 +1,65 @@
+//! A test class.
+/*!
+ A more elaborate class description.
+*/
+
+class Test
+{
+ public:
+
+ //! An enum.
+ /*! More detailed enum description. */
+ enum TEnum {
+ TVal1, /*!< Enum value TVal1. */
+ TVal2, /*!< Enum value TVal2. */
+ TVal3 /*!< Enum value TVal3. */
+ }
+ //! Enum pointer.
+ /*! Details. */
+ *enumPtr,
+ //! Enum variable.
+ /*! Details. */
+ enumVar;
+
+ //! A constructor.
+ /*!
+ A more elaborate description of the constructor.
+ */
+ Test();
+
+ //! A destructor.
+ /*!
+ A more elaborate description of the destructor.
+ */
+ ~Test();
+
+ //! A normal member taking two arguments and returning an integer value.
+ /*!
+ \param a an integer argument.
+ \param s a constant chararcter pointer.
+ \return The test results
+ \sa Test(), ~Test(), testMeToo() and publicVar()
+ */
+ int testMe(int a,const char *s);
+
+ //! A pure virtual member.
+ /*!
+ \sa testMe()
+ \param c1 the first argument.
+ \param c2 the second argument.
+ */
+ virtual void testMeToo(char c1,char c2) = 0;
+
+ //! A public variable.
+ /*!
+ Details.
+ */
+ int publicVar;
+
+ //! A function variable.
+ /*!
+ Details.
+ */
+ int (*handler)(int a,int b);
+};
+
diff --git a/examples/relates.cfg b/examples/relates.cfg
new file mode 100644
index 0000000..83e2be5
--- /dev/null
+++ b/examples/relates.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Relates Command"
+OUTPUT_DIRECTORY = relates
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = relates.cpp
+QUIET = YES
diff --git a/examples/relates.cpp b/examples/relates.cpp
new file mode 100644
index 0000000..d5e483d
--- /dev/null
+++ b/examples/relates.cpp
@@ -0,0 +1,24 @@
+/*!
+ * A String class.
+ */
+
+class String
+{
+ friend int strcmp(const String &,const String &);
+};
+
+/*!
+ * Compares two strings.
+ */
+
+int strcmp(const String &s1,const String &s2)
+{
+}
+
+/*! \relates String
+ * A string debug function.
+ */
+
+void stringDebug()
+{
+}
diff --git a/examples/resdefine.cfg b/examples/resdefine.cfg
new file mode 100644
index 0000000..009a4e8
--- /dev/null
+++ b/examples/resdefine.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Resolving Defines"
+OUTPUT_DIRECTORY = resdefine
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = resdefine.cpp
+QUIET = YES
diff --git a/examples/resdefine.cpp b/examples/resdefine.cpp
new file mode 100644
index 0000000..05a77c5
--- /dev/null
+++ b/examples/resdefine.cpp
@@ -0,0 +1,21 @@
+#define ExportedName InternalName
+
+class InternalName
+{
+ public:
+ InternalName() {}
+ ~InternalName() {}
+};
+
+/*! \class ExportedName
+ * This class's real name is InternalName but everyone should use
+ * ExportedName.
+ */
+
+/*! \fn ExportedName::ExportedName()
+ * The constructor
+ */
+
+/*! \fn ExportedName::~ExportedName()
+ * The destructor
+ */
diff --git a/examples/restypedef.cfg b/examples/restypedef.cfg
new file mode 100644
index 0000000..f17ba4d
--- /dev/null
+++ b/examples/restypedef.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Resolving Typedefs"
+OUTPUT_DIRECTORY = restypedef
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = restypedef.cpp
+QUIET = YES
diff --git a/examples/restypedef.cpp b/examples/restypedef.cpp
new file mode 100644
index 0000000..2cd3f8f
--- /dev/null
+++ b/examples/restypedef.cpp
@@ -0,0 +1,25 @@
+/*! \file restypedef.cpp
+ * An example of resolving typedefs.
+ */
+
+/*! \struct CoordStruct
+ * A coordinate pair.
+ */
+struct CoordStruct
+{
+ /*! The x coordinate */
+ float x;
+ /*! The y coordinate */
+ float y;
+};
+
+/*! Creates a type name for CoordStruct */
+typedef struct CoordStruct Coord;
+
+/*!
+ * This function returns the addition of \a c1 and \a c2, i.e:
+ * (c1.x+c2.x,c1.y+c2.y)
+ */
+Coord add(Coord c1,Coord c2)
+{
+}
diff --git a/examples/structcmd.cfg b/examples/structcmd.cfg
new file mode 100644
index 0000000..bbc4e71
--- /dev/null
+++ b/examples/structcmd.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Structural commands"
+OUTPUT_DIRECTORY = structcmd
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = structcmd.h
+QUIET = YES
diff --git a/examples/structcmd.h b/examples/structcmd.h
new file mode 100644
index 0000000..3e27029
--- /dev/null
+++ b/examples/structcmd.h
@@ -0,0 +1,57 @@
+/*! \file structcmd.h
+ \brief A Documented file.
+
+ Details.
+*/
+
+/*! \def MAX(a,b)
+ \brief A macro that returns the maximum of \a a and \a b.
+
+ Details.
+*/
+
+/*! \var typedef unsigned int UINT32
+ \brief A type definition for a .
+
+ Details.
+*/
+
+/*! \var int errno
+ \brief Contains the last error code.
+
+ \warning Not thread safe!
+*/
+
+/*! \fn int open(const char *pathname,int flags)
+ \brief Opens a file descriptor.
+
+ \param pathname The name of the descriptor.
+ \param flags Opening flags.
+*/
+
+/*! \fn int close(int fd)
+ \brief Closes the file descriptor \a fd.
+ \param fd The descriptor to close.
+*/
+
+/*! \fn size_t write(int fd,const char *buf, size_t count)
+ \brief Writes \a count bytes from \a buf to the filedescriptor \a fd.
+ \param fd The descriptor to write to.
+ \param buf The data buffer to write.
+ \param count The number of bytes to write.
+*/
+
+/*! \fn int read(int fd,char *buf,size_t count)
+ \brief Read bytes from a file descriptor.
+ \param fd The descriptor to read from.
+ \param buf The buffer to read into.
+ \param count The number of bytes to read.
+*/
+
+#define MAX(a,b) (((a)>(b))?(a):(b))
+typedef unsigned int UINT32;
+int errno;
+int open(const char *,int);
+int close(int);
+size_t write(int,const char *, size_t);
+int read(int,char *,size_t);
diff --git a/examples/tag.cfg b/examples/tag.cfg
new file mode 100644
index 0000000..79c2ec0
--- /dev/null
+++ b/examples/tag.cfg
@@ -0,0 +1,8 @@
+PROJECT_NAME = "Tag Files"
+OUTPUT_DIRECTORY = tag
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = tag.cpp
+TAGFILES = example.tag
+PERL_PATH = perl
+QUIET = YES
diff --git a/examples/tag.cpp b/examples/tag.cpp
new file mode 100644
index 0000000..6497dd4
--- /dev/null
+++ b/examples/tag.cpp
@@ -0,0 +1,9 @@
+/*! A class that is inherited from the external class Test.
+*/
+
+class Tag : public Test
+{
+ public:
+ /*! an overloaded member. */
+ void example();
+};
diff --git a/examples/templ.cfg b/examples/templ.cfg
new file mode 100644
index 0000000..ec16654
--- /dev/null
+++ b/examples/templ.cfg
@@ -0,0 +1,6 @@
+PROJECT_NAME = "Template Test"
+OUTPUT_DIRECTORY = template
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
+INPUT = templ.cpp
+QUIET = YES
diff --git a/examples/templ.cpp b/examples/templ.cpp
new file mode 100644
index 0000000..c838c6e
--- /dev/null
+++ b/examples/templ.cpp
@@ -0,0 +1,37 @@
+/*! A template class */
+template<class T,int i=100> class Test
+{
+ public:
+ Test();
+ Test(const Test &);
+ friend void friendTempFunc(Test &, int=5);
+};
+
+/*! complete specialization */
+template<> class Test<void *,200>
+{
+ public:
+ Test();
+};
+
+/*! A partial template specialization */
+template<class T> class Test< T * > : public Test<void *,200>
+{
+ public:
+ Test();
+};
+
+/*! The constructor of the template class*/
+template<class T,int i> Test<T,i>::Test() {}
+
+/*! The copy constructor */
+template<class T,int i> Test<T,i>::Test(const Test<T,i> &t) {}
+
+/*! A friend function of a template class */
+template<class T,int i> void friendTempFunc(Test<T,i> &t,int a) {}
+
+/*! The constructor of the specilization */
+template<> Test<void *,200>::Test() {}
+
+/*! The constructor of the partial specilization */
+template<class T> Test<T*>::Test() {}