diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 1999-12-15 19:25:10 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 1999-12-15 19:25:10 (GMT) |
commit | 322885a8700a209812bf5a94205260c9bef6ac1f (patch) | |
tree | cc1cd70cf5761ddf72ff114c0b65576c3f4c1d2a /examples | |
parent | 361bf7915be13b5c74688e33c427aea30641814c (diff) | |
download | Doxygen-322885a8700a209812bf5a94205260c9bef6ac1f.zip Doxygen-322885a8700a209812bf5a94205260c9bef6ac1f.tar.gz Doxygen-322885a8700a209812bf5a94205260c9bef6ac1f.tar.bz2 |
initial version
Diffstat (limited to 'examples')
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() {} |