################################################################################
# HOW-TO documentation about generating/updating source code documentation for #
# the Circular Buffer library.                                                 #
#                                                                              #
# Copyright (c) 2007 Jan Gaspar                                                #
#                                                                              #
# Use, modification, and distribution is subject to the Boost Software         #
# License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at      #
# http://www.boost.org/LICENSE_1_0.txt)                                        #
################################################################################

The source code documentation (i.e. documentation of functions, classes and
their methods, etc.) is part of the source code. This makes it convenient for
a developer when browsing source files or developing new (documented) code.
The source code documentation is included in the larger, more detailed library
documentation as well which makes it more convenient for the user of the
library. In order to make it easier for the developer, the source code
documentation included in the library documentation is generated from the source
files. Which means the developer does not have to write the same source
documentation twice.

Prerequisites:

1) Unix/Linux shell (with sed editor) available.
   (The script can be easily converted into Windows batch file if you do not
   have access to Unix/Linux shell.)
2) Installed Doxygen http://www.doxygen.org.
   (Source documentation generation was tested with the Doxygen version
   1.4.6.)
3) Installed xsltproc http://xmlsoft.org/XSLT/xsltproc2.html.
4) Installed HTML Tidy http://tidy.sourceforge.net. (Tested with version
    released on 1 September 2005.)


Updating source code documentation:

The source code documentation of the Circular Buffer library obeys the Doxygen
syntax. The library documentation is written in HTML (files circular_buffer.html
and space_optimized.html). The generation of the source code documentation is
performed by executing the update_srcdoc.sh script which relies mainly on
Doxygen and several XSL transformations.

After editing the source code documentation in the source file(s), update the
library documentation by executing:

$>./update_srcdoc.sh circular_buffer

for the circular_buffer or/and

$>./update_srcdoc.sh circular_buffer_space_optimized

for the circular_buffer_space_optimized.
