Commit 281543a8 authored by thomas.forbriger's avatar thomas.forbriger Committed by thomas.forbriger
Browse files

adjusted documentation and flist

This is a legacy commit from before 2015-03-01.
It may be incomplete as well as inconsistent.
See COPYING.legacy and README.history for details.

SVN Path:
SVN Revision: 5134
SVN UUID:     67feda4a-a26e-11df-9d6e-31afc202ad0c
parent 4830b10d
this is <COPYING>
libtfxx C++ software library
lisousi: Line Source Simulation
$Id: COPYING 4960 2013-02-01 09:02:16Z tforb $
The source code in this directory is part of libtfxx which
compiles libtfxx.a
Copyright (C) 2002, 2013 by Thomas Forbriger
Copyright (C) 2012, 2013 by Thomas Forbriger
libtfxx is free software; you can redistribute it and/or modify
lisousi is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
......@@ -53,13 +53,14 @@ clean: ;
EDITFILES=Makefile README $(wildcard *.cfg) COPYING doxygen.txt
DESCRIPTIONTXT=$(filter-out $(EDITFILES),$(wildcard *.txt))
EDITSRC=$(filter-out $(EDITFILES),$(wildcard *.cc *.h *.c *.f *.txt *.gpt *.inc))
EDITSRC=$(filter-out $(EDITFILES) \
$(patsubst %.txt,%.h,$(DESCRIPTIONTXT)) \
$(patsubst %.txt,,$(DESCRIPTIONTXT)),\
$(wildcard *.cc *.h *.c *.f *.gpt *.inc))
flist: $(wildcard *.txt *.c *.f *.h *.inc Makefile *.cc *.gpt) \
doxydoc.cfg README \
$(wildcard testcases/*.par) $(wildcard testcases/*.tpl) \
$(TESTCASEMAKE) $(wildcard testcases/*.gpt) $(TF_EDIT)
flist: $(EDITSRC) doxydoc.cfg README COPYING $(EDITFILES) $(TF_EDIT) \
echo $(filter $(EDITFILES),$^) | tr ' ' '\n' | sort > $@
echo "----" >> $@
echo $(filter $(EDITSRC),$^) | tr ' ' '\n' | sort >> $@
......@@ -144,7 +145,7 @@ DOXYWWWPATH=$(TF_WWWBASEDIR)/lisousi
doxyclean: ;/bin/rm -rfv $(DOXYWWWPATH)
DOXYSRC=README $(wildcard *.h *.cc *.f)
DOXYSRC=README $(wildcard *.h *.cc *.f *.txt)
# create doxygen intermediate configuration
PWD=$(shell env pwd)
this is <README>
C++ library libtfxx
lisousi: Line Source Simulation
A collection of miscellaneous code frequently used by C++ programs in
TFSoftware. See the Makefile for installation instructions.
See files
The home of this software suite is
Please send bug reports and suggestions to
for online documentation.
----- END OF README -----
......@@ -33,151 +33,22 @@
/*! \mainpage
\author Thomas Forbriger
\since November 2002
\date November 2002
\since July 2012
\date April 2013
\version V1.0
\section main_aims Aims
- \ref main_sec_invocation
- \ref main_subsec_help
- \ref main_subsec_description
This library contains smaller and independent sets of classes and modules.
They should provide stable and reliable interfaces and sematics. Some of
them will be copied from libclass which was more for experimenting purposes.
The modules provide handling of commandline options and arguments, I/O byte
swapping, I/O for Fortran binary files, error handling, and more.
\section main_modules Modules
\section main_sec_invocation Invocation
\subsection main_module_commandline Commandline Parameters
\subsection main_subsec_help Program Options and Parameters
\include help_text.txt
This modules supports a convenient definition and use of commandline
arguments. You find this module in namespace tfxx::cmdline.
There are two interfaces available:
- The \ref commandline_h
is used to read optional and mandatory commandline options with or without
- The \ref xcmdline_h
is used to read a list of filenames together with file specific options
and arguments.
\subsection main_module_io I/O support routines
\par Bytesex and byte swapping
\anchor main_module_ioswap
This module supports checking of input data bytesex and allows
swapping of input data bytes.
You find this module in tfxx::ioswap.
References to the \ref group_ioswap are collected on a separate page.
\par Fortran I/O
\anchor main_module_fortranbinio
This module supports reading and writing of Fortran binary data files.
References to the \ref group_fortranio are collected on a separate page.
\subsection main_module_error Exceptions classes and error handling macros
This modules provides a convenient exception base class and some error
handline preprocessor macros.
\sa tfxx::error
\sa tfxx::error::Exception
\sa error.h
\sa \ref group_error
\subsection main_module_misc Other modules
\sa \ref group_blitzutil
\subsection main_module_nogroup Modules outside groups
Some of the modules are not explicitely grouped.
\sa tfxx::Range
\section main_namespaces Namespaces
We make excessive use of namespaces. This my seem inconvenient at a first
glance. Use statements like e.g.
using namespace tfxx::cmdline;
using tfxx::fortranio::FortranBinInput;
for convenient access.
\section related_pages Related Information
- \ref naming
- \ref notes
- \ref general
/*! \page naming Naming conventions
\section nameing_identifiers Classes, Typedefs, etc.
During coding it is sometimes helpfull to recognize the meaning of an
identifier due to some signals in irs name. Therefor the following
guidelines are used. The nameing of template parameters is left free for
\par Classes
Class names always start with a capital letter.
\par Typedefs
Typedefs always start with a capital \c T.
\par Member data
Member data identifiers always start with a capital \c M.
\par Enums
Enumeration definitions start with a capital \c E.
\par Namespaces
Namespaces will be of any type.
\par Template parameters
Template parameters will start with a capital letter but are typically
shorter than class names.
\section nameing_files Filenames
Files with the extension \c .cc contain only non-template definitions. Files
with the extension \c .h may contain prototypes, class declarations or
template code. Files ending on \c def.h contain template code definitions
that is factored out to be compilable into a binary library for explicit
/*! \page notes Programming notes
No notes yet...
/*! \page general General notes
No notes yet...
\subsection main_subsec_description Program Description
\include description_text.txt
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment