This somewhat larger project allows to create documentation for MatLab files
and classes (including packages) using a doxygen filter named mtoc++.
Moreover, a tool/class named MatlabDocMaker
allows to create the documentation
from within MatLab. For Windows, Mac and Unix!
The project is also hosted on the Mathworks File Exchange.
- Supports classes and packages
- Also @folders for classes
- Abstract & Static methods
- Special tags "@type" and "@default" for method parameters and return values for more expressive documentation
- Automatic detection of used fields and appropriate documentation
- Default documentation for methods, parameters, return values etc
- detection of getter & setter methods
- included latex support and shortcuts for higher readability in plain text (e.g. sqrt{x} is like @f$sqrt{x}@f$)
- support for MatLab events
- HTML and LaTeX output
- much more...
The complete documentation can be found at here, but is also included in the download. Detailed instructions for installation and configuration can be found therein, however, here are the basic steps needed to get started:
download & unzip in a folder.
tar xzf mtocpp.tar.gz
Create a
build
folder inside and change to that dirmkdir build; cd build
Compile the source code
cmake .. make
You can find the the executables
mtocpp
andmtocpp_post
inside thebuild
folder, the documentation indocs
. Optionally you can install the
Binaries for MTOC++ are distributed through the official download page.
Unpack the archive and add the binaries to your PATH
.
- Place the
MatlabDocMaker.m
in your project's MatLab path - Copy the contents of the
<mtoc++-source-dir>/tools/config
folder into e.g. a subfolder of your MatLab project - place binaries (win or unix) on PATH environment or inside the folder created in the last step
- Call the MatlabDocMaker.setup method and use the folder from the previous steps as your "documentation configuration files directory".
- Use the MatlabDocMaker.create method to create your documentation!
Martin Drohmann and Daniel Wirtz
We welcome any improvement suggestions and critics.