To build the Doxygen documentation for the BACnet Stack:
- Install doxygen as described at 
  http://www.stack.nl/~dimitri/doxygen/install.html
- If you want to generate call graphs (recommended - very nice! - but takes 
  signficantly longer to build the documents), you must also have 
  graphviz installed.
- To build from the command line, just enter
  doxygen BACnet-stack.doxyfile
- Output is built in doc/output/html, and there is a convenient
  starting point at doc/output/BAC_stack.html.
- If you use Eclipse, 
  - install the eClox plugin to support doxygen within Eclipse
  - Build the documents by right clicking on BACnet-stack.doxyfile,
    and selecting "@ Build Documentation"
- Feel free to tweak the doxygen output to your tastes, interests, and 
  choice of output formats.
- The Latex output could be converted into a PDF (see doxygen manual,
  and google for your issues).
- I have tried the PDF, man, and RTF outputs and not liked the results
  for any of them (500+ pages). I recommend the HTML output, as it is
  well organized and has an obvious flow, both of which the others lack.
    
The doxygen output is not checked into this project because it consists of
  over 5,000 little files (for HTML with call graphs), and it is easily 
  regenerated.
  
For speed, the function call graphs are not enabled in the SVN version
  of the doxyfile.  To enable them, edit BACnet-stack.doxyfile (with a
  text editor or with GUI-based editors in Eclipse or using the 
  doxywizard application) and change 
    HAVE_DOT = YES
    CALLER_GRAPH = YES
    
    
Following the doxygen website's lead, I found the D-Bus project to be a good 
  example of the sort of documentation we needed to have here.
  http://dbus.freedesktop.org/doc/dbus/api/html/index.html


Output Formats:
The default output is HTML, which works well and looks good, but as mentioned,
consists of 5000 files.
The compiled help format (*.chm) also looks pretty good, and is packed into a
single file.  Just a big, single file.

I tried the latex-to-pdf route, but did not like the output (far too much
whitespace, like a function per page, ~600 pages, not usefully organized).
Ditto for RTF and man output.

I could not find a linux-based compiled help compiler, so I resorted to using
Microsoft's.  They seem to be pushing some later generation tools, and 
maybe someone knows if that's a good thing, but I opted for their now
fairly old HTML Help Workshop, version 4.74.
Doxygen nicely arranges the html input, so pretty much all you have to do
is point HTML Help Workshop at BACnet-stack\doc\output\html\index.hhp and
let the compiler run.
