1. jas43
  2. aotus


Harald Klimach  committed 0b4970a

More doxygen comments in the aotus_module.

  • Participants
  • Parent commits f1315af
  • Branches default

Comments (0)

Files changed (3)

File Doxyfile

View file
  • Ignore whitespace
 # *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py 
 # *.f90 *.f *.for *.vhd *.vhdl
-FILE_PATTERNS          = *.f90 
+FILE_PATTERNS          = *.f90 \
+                         *.docu
 # The RECURSIVE tag can be used to turn specify whether or not subdirectories 
 # should be searched for input files as well. Possible values are YES and NO. 

File source/aotus_module.f90

View file
  • Ignore whitespace
   end subroutine get_config_string
 end module aotus_module
+!> \mainpage Aotus
+!! Aotus stands for *Advanced Options in Tables and Universal Scripting*.
+!! It is a Fortran wrapper for the [Lua](http://www.lua.org/) scripting
+!! language.
+!! The aim of this wrapper is to provide flexible configuration files to Fortran
+!! applications with the full user experience provided by Lua.
+!! Aotus is also known as the
+!! [night monkey](http://en.wikipedia.org/wiki/Night_monkey), living in south
+!! america.
+!! Thus we saw the name as fitting as it interacts with the moon (Lua, provided
+!! by the Pontifical Catholic University of Rio de Janeiro in Brazil).
+!! The most prominent data structure in Lua are
+!! [tables](http://www.lua.org/manual/5.2/manual.html#2), which provide the
+!! possibility to store complex data structures.
+!! Thus the configuration is mainly done in global variables in the lua script
+!! or tables.
+!! Aotus provides several layers, encapsulating the bare
+!! [Lua C-API](http://www.lua.org/manual/5.2/manual.html#4):
+!! - Lua_fif: this just provides the
+!!   [ISO_C_Binding](http://www.fortran.bcs.org/2002/interop.htm)
+!!   interface declarations.
+!! - Flu_binding: this the actural Fortran binding wrapped around Lua_fif, to
+!!   provide a more Fortran like interface.
+!!   Especially the Flu_binding::flu_state type is declared which maintains the
+!!   handle for the
+!!   [Lua state](http://www.lua.org/manual/5.2/manual.html#lua_state).
+!! - AOT_table_module: provides some convenience functions to work on Lua tables
+!!   in Fortran.
+!! - AOT_fun_module: provides some convenience functions to work with Lua
+!!   functions in Fortran.
+!! - Aotus_module: provides the high end level to easily retrieve data from a
+!!   Lua script.
+!! - On top of those there is an additional AOT_vector_module, which allows the
+!!   concise reading of values into arrays of rank one.
+!! - Finally there is and additional AOT_out_module, that allows output of
+!!   Fortran values into nested Lua tables.
+!! The library can be compiled by various modern Fortran compilers as described
+!! in \ref compiler_support "Compiler Support".
+!! An example showing the usage of the library in a Fortran application is given
+!! in sample/aotus_sample.f90 in the Aotus main directory.
+!! The corresponding Lua script used as input is given in sample/config.lua.
+!! *Please see also the README.rst.*
+!! *Sources are available at <https://bitbucket.org/haraldkl/aotus/overview>.*

File source/docu/compiler_support.docu

View file
  • Ignore whitespace
+!>\page compiler_support Compiler Support
+!! Aotus relies on the ISO-C-Binding of the Fortran 2003 standard, and therefore
+!! requires relatively new compiler versions.
+!! However a wide range of different compilers are known to compile the library.
+!! # Cray #
+!! Known to work with version 7.4.0 and newer.
+!! # GNU gfortran #
+!! Known to work with version 4.4.5 and newer.
+!! # IBM #
+!! Known to work with version 11.1.
+!! # Intel #
+!! Known to work with version 12.0 and newer.
+!! # NAG #
+!! Known to work with version 5.2.
+!! # PGI #
+!! Does not correctly resolve the generic aot_get_val interface!