summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/fbithesis
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/fbithesis
Initial commit
Diffstat (limited to 'macros/latex/contrib/fbithesis')
-rw-r--r--macros/latex/contrib/fbithesis/README123
-rw-r--r--macros/latex/contrib/fbithesis/distribution.key21
-rw-r--r--macros/latex/contrib/fbithesis/example.pdfbin0 -> 98616 bytes
-rw-r--r--macros/latex/contrib/fbithesis/example.tex141
-rw-r--r--macros/latex/contrib/fbithesis/fbithesis.dtx5113
-rw-r--r--macros/latex/contrib/fbithesis/fbithesis.dtx.asc7
-rw-r--r--macros/latex/contrib/fbithesis/fbithesis.ins192
-rw-r--r--macros/latex/contrib/fbithesis/fbithesis.pdfbin0 -> 687727 bytes
8 files changed, 5597 insertions, 0 deletions
diff --git a/macros/latex/contrib/fbithesis/README b/macros/latex/contrib/fbithesis/README
new file mode 100644
index 0000000000..98ee12fb09
--- /dev/null
+++ b/macros/latex/contrib/fbithesis/README
@@ -0,0 +1,123 @@
+ The fbithesis package
+
+ ($Date: 2008-02-17 23:54:50 +0100 (So, 17. Feb 2008) $)
+
+ Copyright (C) 2002-2008 Andre Dierker
+
+Purpose:
+ This is a LaTeX2e package providing a new document-class tuned for
+ research reports or internal reports like master/phd-theses at the
+ University of Dortmund.
+
+ At the Department of Computer Science at the University of Dortmund
+ there are cardboard cover pages for internal reports like
+ master/phd-theses. The main function of the LaTeX2e document-class
+ provided by this package is a replacement for the \maketitle command
+ to typeset a title page that is adjusted to these cover pages.
+
+Files:
+ fbithesis.dtx Docstrip archive
+ To generate the documentation, run this
+ through LaTeX.
+ fbithesis.dtx.asc Signature file
+ To verify the docstrip archive, run e.g.
+ gpg --verify fbithesis.dtx.asc
+
+Generated Files:
+ fbithesis.ins Batch file, run through LaTeX
+ The file will be generated if you run
+ fbithesis.dtx through LaTeX.
+ fbithesis.drv Driver for documentation
+ The file will be generated from fbithesis.ins.
+ To generate customized documentation, edit this
+ file and run it through LaTeX.
+ fbithesis.cls LaTeX package
+ It will be generated, if you run fbithesis.ins
+ through LaTeX.
+ fbithesis.cfg Configuration file
+ It will be generated, if you run fbithesis.ins
+ through LaTeX.
+ fbithesis.dvi Package documentation, will be generated from
+ fbithesis.drv
+ example.tex Example file which demonstrates the possibilities of
+ this package. It will be generated, if you run
+ fbithesis.ins through LaTeX.
+ README This file. It will be generated if you run
+ fbithesis.dtx through LaTeX.
+
+Installation:
+
+ LaTeX fbithesis.dtx Creates docstrip installation file
+ fbithesis.ins and this file
+ (La)TeX fbithesis.ins Creates class file fbithesis.cls, example
+ file example.tex and documentation driver
+ fbithesis.drv
+
+ Docstrip options available:
+ package - to produce a (LaTeX2e) class file (.cls)
+ driver - to produce a driver file to print the documentation
+ example - to produce an example file, which demonstrates the
+ possibilities of the package
+
+ Move fbithesis.cls into a directory searched by LaTeX. (If you don't
+ know where this could be simply drop the file
+ into your thesis' directory)
+ LaTeX fbithesis.dtx Creates the (LaTeX2e) documentation.
+
+ optionally:
+ Edit fbithesis.drv and customize the documentation driver to your wishes.
+ LaTeX fbithesis.drv Generates customized documentation.
+ Depending on your customization you will
+ have to run
+ makeindex fbithesis.idx -s gind.ist -o fbithesis.ind
+ and/or
+ makeindex fbithesis.glo -s gglo.ist -o fbithesis.gls
+ or (if you are using docindex
+ makeindex fbithesis.idx -s docindex.ist -o fbithesis.ind
+ and/or
+ makeindex fbithesis.glo -s docindex.ist -o fbithesis.gls
+ LaTeX example.tex Demonstrates the possibilities of this
+ package.
+
+Contact:
+ E-Mail: dierker@kand.de
+ Address: Andre Dierker, Natruper Str. 49, D-49076 Osnabrück, Germany
+
+Legal stuff:
+ README, the ReadMe file for the fbithesis package
+ Copyright (C) 2002-2008 Andre Dierker
+
+ This file is part of the fbithesis package.
+ -------------------------------------------
+
+ There is no warranty for the fbithesis package. I provide the
+ Work `as is', without warranty of any kind, either expressed or
+ implied, including, but not limited to, the implied warranties of
+ merchantability and fitness for a particular purpose. The entire
+ risk as to the quality and performance of the program is with you.
+ Should the Work prove defective, you assume the cost of all
+ necessary servicing, repair, or correction.
+
+ This Work may be distributed and/or modified under the
+ conditions of the LaTeX Project Public License, either version 1.3
+ of this license or (at your option) any later version.
+
+ The latest version of this license is in
+ http://www.latex-project.org/lppl.txt
+ and version 1.3 or later is part of all distributions of LaTeX
+ version 2005/12/01 or later.
+
+ This is a generated file. It may not be distributed without the
+ original source file fbithesis.dtx.
+
+ This Work has the LPPL maintenance status "author-maintained".
+
+ The Current Maintainer of this work is Andre Dierker.
+
+ This Work consists of all files listed above in this file. See
+ the sections ``Files'' and ``Generated Files''.
+
+ Files generated by means of unpacking this program using the
+ docstrip program may be distributed at the distributor's
+ discretion. However if they are distributed then a copy of
+ this Work must be distributed together with them.
diff --git a/macros/latex/contrib/fbithesis/distribution.key b/macros/latex/contrib/fbithesis/distribution.key
new file mode 100644
index 0000000000..a9fd57df36
--- /dev/null
+++ b/macros/latex/contrib/fbithesis/distribution.key
@@ -0,0 +1,21 @@
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: GnuPG v2.0.16 (Darwin)
+
+mQGiBDyonC0RBACnu/UMDAnmKBiEHDsCa0aKTrClBt62tDiQLYrK27Yu8LYtynL6
+FCO9x+TT73WU9oh5aDSPxIk4lgkzYja6GSm33lWYA57WClikirDeLMiLcqt0RmSy
+X2zwBdmVHowfxX+Cn5z8bHioqgHiE3xILtmRzlggJVv5L9GYSU4NxKEnkwCgt0Rw
+8ShxvAgnytOGzvVLNCg4fa8EAJDbnEqWJ9gTcfz+d2M5gzD6VNzbfDKv1a4THAsd
+BD7i26b83hRLWY72t8InB7CMnLFxL2D2QoUFcavIF0BTfzzEpc69ISMd9yx6nEjT
+lM7Sd6k2CjY51HCO9cyaqCc4ZVJIiyyJbtsqzl7ppkHIppuVNlDwykA2ro6/2tX7
+XJc+A/95suoleLvpSGjoZf2MGwEc3hgiQNON90rHLR9SG/ZcVGLJmp88cHfGhYCx
+VvXFKNaQzdbkmKvr4bVWoUq8B5gwxXPtKQyHK/vFXyvWLzLiUhRO8oRwVWLUmUjc
+bknr07DGh7sfEvMBu65J3zwrtWXcUye2bwnfedCgj6bkyS84S7Q8QW5kcmUgRGll
+cmtlciAoc29mdHdhcmUgZGlzdHJpYnV0aW9uIGtleSkgPHNvZnR3YXJlQGthbmQu
+ZGU+iF8EExECABcFAjyonC0FCwcKAwQDFQMCAxYCAQIXgAASCRBZxSHq9NJKyQdl
+R1BHAAEB9CIAniNAgWiW08JBfTN5nKFo9hhekS5tAJ9Q7ef739PxiAIOZD/tbABT
+Nv1UlohGBBARAgAGBQI8qKPjAAoJEI47c57dK8yd51UAnjZFuVOjfb1bHkYUIU52
+5bLeaKGZAKC8rwjvaw9bgCcvI65bEe45CWCGBYhrBBARAgArBQJLqT4CBYMB4oUA
+HhpodHRwOi8vd3d3LmNhY2VydC5vcmcvY3BzLnBocAAKCRDSuw0BZdD9WPzhAJ9s
+uzKN/gO10uwxF7iLQ6g7BifqpgCeJeEvXZjssdmo+hPLZNxbk+Br2do=
+=SO0Z
+-----END PGP PUBLIC KEY BLOCK-----
diff --git a/macros/latex/contrib/fbithesis/example.pdf b/macros/latex/contrib/fbithesis/example.pdf
new file mode 100644
index 0000000000..290726cd5f
--- /dev/null
+++ b/macros/latex/contrib/fbithesis/example.pdf
Binary files differ
diff --git a/macros/latex/contrib/fbithesis/example.tex b/macros/latex/contrib/fbithesis/example.tex
new file mode 100644
index 0000000000..69eae3f0a7
--- /dev/null
+++ b/macros/latex/contrib/fbithesis/example.tex
@@ -0,0 +1,141 @@
+%%
+%% This is file `example.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% fbithesis.dtx (with options: `example')
+%%
+%% This is `example.tex', an example file for the fbithesis package.
+%% Copyright (C) 2002-2011 Andre Dierker
+%%
+%% This file is part of the fbithesis package.
+%% -------------------------------------------
+%%
+%% It may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License, either version 1.3 of this license or
+%% (at your option) any later version.
+%%
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This file may not be distributed without the original source file
+%% `fbithesis.dtx'.
+%%
+%% The list of all files belonging to the fbithesis package is given
+%% in the file `README'.
+%%
+%% For more details, LaTeX the source `fbithesis.dtx'.
+%%
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]%
+\ProvidesFile{example.tex}
+\def\DescribesFile#1 [#2 #3 #4 (#5)]
+ {\def\filedate{#2}\def\fileversion{#3}}
+\DescribesFile{fbithesis.cls}
+ [2011/02/06 v1.2m
+ Example
+ for fbithesis (AD)]
+ %
+ %
+ %
+ % At first we include an auxiliary file that contains the logos. You
+ % may ignore this line. It is only necessary for this example.
+\include{exampleaux}
+ %
+ % fbithesis supports three classes as `baseclass'. To use `book' or
+ % `amsbook' you have to use one of the following lines. To use
+ % `scrbook' from KOMA-Script as baseclass you have to do nothing since
+ % this is the default. If you don't know what I'm talking about just
+ % leave these lines as they are. Almost everyone uses `scrbook' as
+ % baseclass. It is a wise decision.
+ %
+ % \def\baseclass{book}
+ % \def\baseclass{amsbook}
+ %
+ % Of course we choose fbithesis as document class. Additionally we
+ % want to look at the draft mode and test the option forwarding of
+ % a4paper to the baseclass. Since the example is in English, we also
+ % choose english.
+\documentclass[a4paper, english]{fbithesis}
+\begin{document}
+ \frontmatter
+ %
+ % As in the standard LaTeX classes we use the title command. Normally
+ % one can trust TeX's ability to compute a satisfactory line breaking.
+ % However TeX's algorithm is not optimized for titles but for
+ % continuous text. To make it more difficult the cardboard window is
+ % quite small. So if you prefer a different make up, help yourself
+ % with an appropriate placed `\\', as you can see in this example.
+ \title{Example file for the\\ \texttt{fbithesis} package%
+ %
+ % The `\thanks' command may be used to provide further
+ % information. But as you can see the result of the `\thanks'
+ % mechanism does not look well. Therefore I do not recommend the
+ % usage. It is better to write a preface instead.
+ \thanks{The \texttt{fbithesis}~package has version number
+ \fileversion. It was last revised on \filedate.}%
+ }
+ %
+ % The usage of the \author command: In general master/phd-theses will
+ % have only one author, but just in case the \and-command is also
+ % provided.
+ \author{Andre Dierker%
+ %
+ % Again the use of the command `\thanks' is possible but not
+ % recommmended. Please refer to the documentation.
+ % \thanks{\texttt{software@kand.de}}%
+ \and Nobody Else%
+ % \thanks{\texttt{no@body.el.se}}%
+ }
+ %
+ % Normally the subject would be something like `Diplomarbeit' or
+ % `Dissertation' ...
+ \subject{Example}
+ %
+ % You may give the beginning and the deadline of your thesis here.
+ \date[Created April 3, 2002]{Printed \today}
+ %
+ % Providing the supervisors of the thesis.
+ \supervisors{First Tutor}{Second Tutor}
+ %
+ % You may use the following commands if you want to place a logos on
+ % the title page. Conforming to Carlisle: Packages in the `graphics'
+ % bundle we skip the extensions of the filenames. Due to this TeX is
+ % able to include the correct version of the file (EPS or PDF)
+ \unidologo{tulogo}
+ \chairlogo{ls9logo}
+ \thesislogo{thesislogo}
+ %
+ % The chair you are writing your thesis at.
+ \chair{Chair IX (Virtual Research)\\
+ Department of Computer Science\\
+ TU Dortmund}
+ %
+ % The data provided by the above macros is now used to set the title page.
+ % This is done with the macro \maketitle.
+ \maketitle
+ %
+ % So after the title page is set your thesis may begin:
+ \mainmatter
+ Now here comes your text.
+\end{document}
+\endinput
+%%
+%% End of file `example.tex'.
diff --git a/macros/latex/contrib/fbithesis/fbithesis.dtx b/macros/latex/contrib/fbithesis/fbithesis.dtx
new file mode 100644
index 0000000000..0c8681b07c
--- /dev/null
+++ b/macros/latex/contrib/fbithesis/fbithesis.dtx
@@ -0,0 +1,5113 @@
+% \iffalse
+%<*ID>
+%^^A =================================================================
+%^^A Here is the `standard file header'-stuff
+%^^A (http://www.math.utah.edu/~beebe/software/filehdr/filehdr.html)
+%^^A Basic info. For a short installation guide, see below
+%^^A =================================================================
+%%% @LaTeX-package-file{
+%%% author = "Andre Dierker",
+%%% version = "v1.2m",
+%%% date = "$Date: 2011-02-07 00:30:22 +0100 (Mo, 07. Feb 2011) $",
+%%% filename = "fbithesis.dtx,
+%%% address = "Andre Dierker
+%%% Bruder-Otger-Str. 17
+%%% D-49088 Osnabrück
+%%% Germany",
+%%% URL = "http://fbithesis.kand.de/",
+%%% email = "dierker@kand.de (Internet)",
+%%% pgp-key = "1024D/DD2BCC9D 1999-10-27 Andre Dierker",
+%%% fingerprint = "8182 D1CE B1B4 2D58 B6FF
+%%% CBD8 8E3B 739E DD2B CC9D",
+%%% pgp-key = "1024D/F4D24AC9 2002-04-01 Andre Dierker
+%%% (software distribution key) <software@kand.de>",
+%%% fingerprint = "461E 2EB4 DE3A 6BC8 3320
+%%% 2A7B 59C5 21EA F4D2 4AC9",
+%%% codetable = "ISO/ASCII",
+%%% keywords = "University of Dortmund, TU Dortmund University,
+%%% Department of Computer Science, internal,
+%%% research, project, technical,
+%%% report, master, diploma, phd, doctoral, thesis,
+%%% dissertation, title page, cover page, cardboard,
+%%% Universität Dortmund, TU Dortmund,
+%%% Technische Universität Dortmund,
+%%% Fachbereich Informatik, Fakultät für Informatik
+%%% Diplomarbeit, Doktorarbeit, Projektgruppe,
+%%% Forschungsbericht, Intern, Bericht, Endbericht,
+%%% Deckblatt, Titelseite, Titelblatt, maketitle,
+%%% titlepage, documentclass",
+%%% dependencies = "\LaTeXe, graphicx",
+%%% supported = "yes",
+%%% abstract = "This is a LaTeX2e package providing a new
+%%% document-class tuned for research reports or
+%%% internal reports like master/phd-theses at the
+%%% TU Dortmund.",
+%%% docstring = "At the Department of Computer Science
+%%% (german: `Fakultät für Informatik)
+%%% at the TU Dortmund there are
+%%% cardboard cover pages for internal reports like
+%%% master/phd-theses. The main function of the
+%%% LaTeX2e document-class provided by this package
+%%% is a replacement for the \maketitle command to
+%%% typeset a title page that is adjusted to these
+%%% cover pages.",
+%%% copyright = "fbithesis.dtx, the documented macro-file for
+%%% the fbithesis package
+%%% Copyright (C) 2002-2011 Andre Dierker
+%%%
+%%% This Work may be distributed and/or modified
+%%% under the conditions of the LaTeX Project Public
+%%% License, either version 1.3 of this license or
+%%% (at your option) any later version.
+%%%
+%%% The latest version of this license is in
+%%% http://www.latex-project.org/lppl.txt
+%%% and version 1.3 or later is part of all
+%%% distributions of LaTeX version 2005/12/01 or
+%%% later.
+%%%
+%%% This Work has the LPPL maintenance status
+%%% "author-maintained".
+%%%
+%%% The Current Maintainer of this work is
+%%% Andre Dierker.
+%%%
+%%% This Work consists of all files listed in
+%%% README."
+%%% }
+%</ID>
+%
+%<*install>
+%^^A =================================================================
+%^^A Purpose of this package
+%^^A =================================================================
+% This is a LaTeX2e package providing a new document-class tuned for
+% research reports or internal reports like master/phd-theses at the
+% TU Dortmund.
+%
+% At the Department of Computer Science at the TU Dortmund there are
+% cardboard cover pages for internal reports like master/phd-theses.
+% The main function of the LaTeX2e document-class provided by this
+% package is a replacement for the \maketitle command to typeset a
+% title page that is adjusted to these cover pages.
+%
+%^^A =================================================================
+%^^A Installation of this package
+%^^A =================================================================
+% Installation:
+% LaTeX this file: creates docstrip installation file
+% fbithesis.ins, README AND the (LaTeX2e)
+% documentation
+% (La)TeX fbithesis.ins: creates class file fbithesis.cls, example
+% file example.tex and documentation
+% driver fbithesis.drv
+%
+% Docstrip options available:
+% package - to produce a (LaTeX2e) class file (.cls)
+% driver - to produce a driver file to print the documentation
+% example - to produce an example file, which demonstrates the
+% possibilities of this package
+%
+% Additionally Docstrip options: (these are not really used)
+% ID - the Standard File Header
+% install - the short installation guide
+% readme - the ReadMe file
+% installer - the installer batch file
+% dtx - Information that should remain in this file
+%</install>
+% \fi
+%
+%^^A =================================================================
+%^^A Some basic integrity-test stuff
+%^^A =================================================================
+% \CheckSum{1104}
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+%
+% \iffalse
+%
+% \changes{v0.3b}{2002/03/31}{ReadMe: revised}
+% \changes{v0.5b}{2002/08/15}{ReadMe: \file{fbithesis.cfg} added}
+% \changes{v0.8a}{2002/12/16}{ReadMe: changed (LPPL removal, 'No
+% warranty' disclaimer)}
+% \changes{v0.8e}{2003/01/01}{ReadMe: extended purpose}
+% \changes{v1.2b}{2005/01/05}{ReadMe: address updated}
+% \changes{v1.2c}{2005/02/13}{ReadMe: \file{makeindex}-lines for
+% docindex}
+% \changes{v1.2k}{2008/02/17}{ReadMe: renamed to \file{README}}
+% \changes{v1.2m}{2011/02/06}{ReadMe: address updated}
+% \changes{v1.2m}{2011/02/06}{ReadMe: renaming of uni and fbi}
+%<*readme>
+%^^A =================================================================
+%^^A Here is the README file
+%^^A It is written on first LaTeX run if it does not already exist
+%^^A =================================================================
+\begin{filecontents*}{README.txt}
+ The fbithesis package
+
+ ($Date: 2011-02-07 00:30:22 +0100 (Mo, 07. Feb 2011) $)
+
+ Copyright (C) 2002-2011 Andre Dierker
+
+Purpose:
+ This is a LaTeX2e package providing a new document-class tuned for
+ research reports or internal reports like master/phd-theses at the
+ TU Dortmund.
+
+ At the Department of Computer Science at the TU Dortmund
+ there are cardboard cover pages for internal reports like
+ master/phd-theses. The main function of the LaTeX2e document-class
+ provided by this package is a replacement for the \maketitle command
+ to typeset a title page that is adjusted to these cover pages.
+
+Files:
+ fbithesis.dtx Docstrip archive
+ To generate the documentation, run this
+ through LaTeX.
+ fbithesis.dtx.asc Signature file
+ To verify the docstrip archive, run e.g.
+ gpg --verify fbithesis.dtx.asc
+
+Generated Files:
+ fbithesis.ins Batch file, run through LaTeX
+ The file will be generated if you run
+ fbithesis.dtx through LaTeX.
+ fbithesis.drv Driver for documentation
+ The file will be generated from fbithesis.ins.
+ To generate customized documentation, edit this
+ file and run it through LaTeX.
+ fbithesis.cls LaTeX package
+ It will be generated, if you run fbithesis.ins
+ through LaTeX.
+ fbithesis.cfg Configuration file
+ It will be generated, if you run fbithesis.ins
+ through LaTeX.
+ fbithesis.dvi Package documentation, will be generated from
+ fbithesis.drv
+ example.tex Example file which demonstrates the possibilities of
+ this package. It will be generated, if you run
+ fbithesis.ins through LaTeX.
+ README This file. It will be generated if you run
+ fbithesis.dtx through LaTeX.
+
+Installation:
+
+ LaTeX fbithesis.dtx Creates docstrip installation file
+ fbithesis.ins and this file
+ (La)TeX fbithesis.ins Creates class file fbithesis.cls, example
+ file example.tex and documentation driver
+ fbithesis.drv
+
+ Docstrip options available:
+ package - to produce a (LaTeX2e) class file (.cls)
+ driver - to produce a driver file to print the documentation
+ example - to produce an example file, which demonstrates the
+ possibilities of the package
+
+ Move fbithesis.cls into a directory searched by LaTeX. (If you don't
+ know where this could be simply drop the file
+ into your thesis' directory)
+ LaTeX fbithesis.dtx Creates the (LaTeX2e) documentation.
+
+ optionally:
+ Edit fbithesis.drv and customize the documentation driver to your wishes.
+ LaTeX fbithesis.drv Generates customized documentation.
+ Depending on your customization you will
+ have to run
+ makeindex fbithesis.idx -s gind.ist -o fbithesis.ind
+ and/or
+ makeindex fbithesis.glo -s gglo.ist -o fbithesis.gls
+ or (if you are using docindex
+ makeindex fbithesis.idx -s docindex.ist -o fbithesis.ind
+ and/or
+ makeindex fbithesis.glo -s docindex.ist -o fbithesis.gls
+ LaTeX example.tex Demonstrates the possibilities of this
+ package.
+
+Contact:
+ E-Mail: dierker@kand.de
+ Address: Andre Dierker, Bruder-Otger-Str. 17, D-49088 Osnabrück, Germany
+
+Legal stuff:
+ README, the ReadMe file for the fbithesis package
+ Copyright (C) 2002-2011 Andre Dierker
+
+ This file is part of the fbithesis package.
+ -------------------------------------------
+
+ There is no warranty for the fbithesis package. I provide the
+ Work `as is', without warranty of any kind, either expressed or
+ implied, including, but not limited to, the implied warranties of
+ merchantability and fitness for a particular purpose. The entire
+ risk as to the quality and performance of the program is with you.
+ Should the Work prove defective, you assume the cost of all
+ necessary servicing, repair, or correction.
+
+ This Work may be distributed and/or modified under the
+ conditions of the LaTeX Project Public License, either version 1.3
+ of this license or (at your option) any later version.
+
+ The latest version of this license is in
+ http://www.latex-project.org/lppl.txt
+ and version 1.3 or later is part of all distributions of LaTeX
+ version 2005/12/01 or later.
+
+ This is a generated file. It may not be distributed without the
+ original source file fbithesis.dtx.
+
+ This Work has the LPPL maintenance status "author-maintained".
+
+ The Current Maintainer of this work is Andre Dierker.
+
+ This Work consists of all files listed above in this file. See
+ the sections ``Files'' and ``Generated Files''.
+
+ Files generated by means of unpacking this program using the
+ docstrip program may be distributed at the distributor's
+ discretion. However if they are distributed then a copy of
+ this Work must be distributed together with them.
+\end{filecontents*}
+%</readme>
+%
+% \changes{v0.3b}{2002/03/31}{Batch file: optimized preambles}
+% \changes{v0.4f}{2002/07/05}{Batch file: \cmd{\usedir}}
+% \changes{v0.4h}{2002/08/13}{Batch file: request docstrip v2.4e}
+% \changes{v0.5b}{2002/08/15}{Batch file: \file{fbithesis.cfg}
+% stuff}
+% \changes{v0.5f}{2002/09/04}{Batch file: minor changes}
+% \changes{v0.7a}{2002/11/06}{Batch file: \cmd{stdtext}}
+% \changes{v0.8a}{2002/12/16}{Batch file: changed (LPPL removal)}
+% \changes{v1.0a}{2003/01/03}{Batch file: mention possible
+% locations}
+% \changes{v1.1j}{2003/07/03}{Batch file: linebreaks}
+% \changes{v1.2e}{2006/01/03}{Batch file: optic}
+%<*installer>
+%^^A =================================================================
+%^^A Here is the docstrip installation file
+%^^A It is written on first LaTeX run if it does not already exist
+%^^A =================================================================
+\begin{filecontents}{fbithesis.ins}
+%% fbithesis.ins, the batch file for the fbithesis package
+%% Copyright (C) 2002-2011 Andre Dierker
+%%
+%% This file is part of the fbithesis package.
+%% -------------------------------------------
+%%
+%% It may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License, either version 1.3 of this license
+%% or (at your option) any later version.
+%%
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% In particular, NO PERMISSION is granted to modify the contents of
+%% this file since it contains the legal notices that are placed in
+%% the files it generates.
+%%
+%% This file may not be distributed without the original source file
+%% fbithesis.dtx.
+%%
+%% The list of all files belonging to the fbithesis package is given
+%% in the file `README'.
+%%
+%% This file will generate fast loadable files and documentation
+%% driver files from the .dtx files in this package when run through
+%% LaTeX or TeX.
+%%
+%% ------------------- start of docstrip commands -------------------
+\input docstrip.tex
+%
+\ifToplevel{\ifx\askonceonly\undefined%
+\Msg{**********************************************}%
+\Msg{*}%
+\Msg{* This installation requires docstrip}%
+\Msg{* version 2.4e or later.}%
+\Msg{*}%
+\Msg{* An older version of docstrip has been input}%
+\Msg{*}%
+\Msg{**********************************************}%
+\errhelp{Move or rename old docstrip.tex.}%
+\errmessage{Old docstrip in input path}%
+\batchmode%
+\csname @@end\endcsname%
+\fi%
+}%
+%
+%% Define standard text:
+%
+\def\nline{^^J\MetaPrefix\space}%
+\def\stdtext{%
+Copyright (C) 2002-2011 Andre Dierker\nline\nline%
+This file is part of the fbithesis package.\nline%
+-------------------------------------------\nline\nline%
+It may be distributed and/or modified under the conditions of the\nline%
+LaTeX Project Public License, either version 1.3 of this license or\nline%
+(at your option) any later version.\nline\nline%
+The latest version of this license is in\nline%
+\space\space http://www.latex-project.org/lppl.txt\nline%
+and version 1.3 or later is part of all distributions of LaTeX\nline%
+version 2005/12/01 or later.\nline\nline%
+This file may not be distributed without the original source file\nline%
+`\inFileName'.\nline\nline%
+The list of all files belonging to the fbithesis package is given\nline%
+in the file `README'.}
+%
+%% Declare preambles (and use \stdtext):
+%
+\declarepreamble\driver
+
+This is `\outFileName', the documentation driver for the fbithesis
+package.
+\stdtext
+
+This is the driver file to produce the LaTeX documentation from the
+original source file `\inFileName'.
+
+Make changes to it as needed. (Never edit the file `\inFileName'!)
+
+\endpreamble%
+%
+\declarepreamble\package
+
+This is `\outFileName', a LaTeX2e package providing a replacement
+for the maketitle command.
+\stdtext
+
+For more details, LaTeX the source `\inFileName'.
+
+\endpreamble%
+%
+\declarepreamble\example
+
+This is `\outFileName', an example file for the fbithesis package.
+\stdtext
+
+For more details, LaTeX the source `\inFileName'.
+
+\endpreamble%
+%
+\declarepreamble\config
+
+This is `\outFileName', a configuration file for the fbithesis
+package.
+\stdtext
+
+For more details, LaTeX the source `\inFileName'.
+
+\endpreamble%
+%
+\keepsilent%
+%
+%% Greeting:
+%
+\askforoverwritetrue%
+%
+\ifToplevel{%
+ \Msg{}%
+ \Msg{*********************************************************}%
+ \Msg{* Hello to the installation of the `fbithesis' package. *}%
+ \Msg{*********************************************************}%
+ \Msg{}%
+ \Msg{***********************}%
+ \Msg{* Generating files... *}%
+ \Msg{***********************}%
+}%
+%
+%% File generation:
+%
+\generate{%
+ \usepreamble\example%
+ \file{example.tex}{\from{fbithesis.dtx}{example}}%
+ \file{exampleaux.tex}{\from{fbithesis.dtx}{exampleaux}}%
+ \usepreamble\driver%
+ \file{fbithesis.drv}{\from{fbithesis.dtx}{driver}}%
+ \usepreamble\config%
+ \file{fbithesis.cfg}{\from{fbithesis.dtx}{config}}%
+ \usedir{tex/latex/misc}%
+ \usepreamble\package%
+ \file{fbithesis.cls}{\from{fbithesis.dtx}{package}}%
+}%
+%
+%% Report:
+%
+\ifToplevel{%
+ \Msg{}%
+ \Msg{**************************************************************}%
+ \Msg{*}%
+\makeatletter\@ifundefined{basedir}{%
+ \Msg{* To finish the installation you have to move the following}%
+ \Msg{* file into a directory searched by LaTeX:}%
+}{%
+ \Msg{* The following file has been automatically created in a}%
+ \Msg{* directory searched by LaTeX:}%
+}\makeatother%
+ \Msg{*}%
+ \Msg{* \space\space fbithesis.cls}%
+\makeatletter\@ifundefined{basedir}{%
+ \Msg{*}%
+ \Msg{* Using a TDS compatible TeX distribution, this would be e.g.}%
+ \Msg{* tex/latex/misc of your main or your local or your private}%
+ \Msg{* texmf path. If you don't know these paths, have a look}%
+ \Msg{* at your `texmf.cnf' or try:}%
+ \Msg{* \space\space kpsexpand \string $TEXMFMAIN}%
+ \Msg{* \space\space kpsexpand \string $TEXMFLOCAL}%
+ \Msg{* \space\space kpsexpand \string $HOMETEXMF}%
+ \Msg{* You may also use another folder at your \string $TEXINPUTS path.}%
+}{}\makeatother%
+ \Msg{*}%
+ \Msg{* To produce the documentation and an example, run the}%
+ \Msg{* following files through LaTeX:}%
+ \Msg{*}%
+ \Msg{* \space\space fbithesis.drv (three times)}%
+ \Msg{* \space\space example.tex}%
+ \Msg{*}%
+ \Msg{* For the legal stuff please have a look at:}%
+ \Msg{*}%
+ \Msg{* \space\space README}%
+ \Msg{*}%
+ \Msg{*}%
+ \Msg{* Happy TeXing!}%
+ \Msg{*}%
+ \Msg{**************************************************************}%
+ \Msg{}%
+}%
+%
+\endbatchfile
+\end{filecontents}
+%</installer>
+%
+% \changes{v0.3d}{2002/04/03}{Head: revised}
+% \changes{v0.5b}{2002/08/15}{Head: \file{fbithesis.cfg} stuff}
+% \changes{v0.5e}{2002/09/04}{Head: revised}
+%^^A =================================================================
+%^^A Here is the header that is written to driver-, example- and
+%^^A class-file
+%^^A =================================================================
+%
+% The docdate info. It specifies the date of the documentation, which
+% may differ from the filedate. (Its ok if docdate is younger. If it
+% is older, then I forgot documenting. In that case: kick me... ;-)
+%<*dtx|driver>
+\def\docdate{2008/02/17}
+%</dtx|driver>
+%
+% The required LaTeX version:
+%<*dtx|driver|package|example>
+\NeedsTeXFormat{LaTeX2e}[1994/12/01]%
+%</dtx|driver|package|example>
+%
+% Identification of the docstrip file:
+%<*dtx>
+\ProvidesFile
+%=====================================================================
+ {fbithesis.dtx}
+%=====================================================================
+%</dtx>
+%
+% Identification of the driver file:
+%<driver>\ProvidesFile{fbithesis.drv}
+%
+% Identification of the example file:
+%<example>\ProvidesFile{example.tex}
+%
+% Identification of the auxiliary file for the example:
+%<exampleaux>\ProvidesFile{exampleaux.tex}
+%
+% Identification of the configuration file:
+%<config>\ProvidesFile{fbithesis.cfg}
+%
+% Identification of the package file:
+%<package>\ProvidesClass{fbithesis}
+%
+% Provide command to identify example file:
+%<example>\def\DescribesFile#1 [#2 #3 #4 (#5)]
+%<example> {\def\filedate{#2}\def\fileversion{#3}}
+%
+% Identification of the example file:
+%<example>\DescribesFile{fbithesis.cls}
+%
+% The next three lines:
+% 1.: Identification of the included .dtx-file.
+% 2.: The date and version for docstrip, driver, example, config,
+% package and dtx file.
+% 3.: A short description and author for the included .dtx-file.
+% \fi
+% \ProvidesFile{fbithesis}
+ [2011/02/06 v1.2m
+% Documentation for fbithesis (AD)]
+% \iffalse
+%
+% A short description and author for driver, example, config
+% and package file:
+%<package> TU Dortmund FBI Report class (AD)]
+%<example> Example
+%<exampleaux> Auxiliary file for the example
+%<config> Configuration
+%<driver> Driver
+%<example|exampleaux|config|driver> for fbithesis (AD)]
+%
+% A short description and author for the docstrip file:
+%<*dtx>
+ Documented source for fbithesis (AD)]
+%</dtx>
+%
+% \changes{v0.3c}{2002/04/01}{Driver: revised}
+% \changes{v0.8a}{2002/12/16}{Driver: changed (LPPL removal)}
+% \changes{v1.1j}{2003/07/03}{Driver: use \package{docindex.sty}}
+% \changes{v1.1k}{2003/07/28}{Driver: use \package{xdoc2.sty}}
+% \changes{v1.1k}{2003/07/28}{Driver: \env{length} and
+% \cmd{describefile} implemented}
+% \changes{v1.1l}{2003/09/11}{Driver: cleaned of
+% \package{xdoc2}-stuff}
+% \changes{v1.2b}{2005/01/04}{Driver: use \package{hyperref.sty}}
+%^^A =================================================================
+%^^A Here is the driver for customized documentation
+%^^A =================================================================
+%<*driver>
+ %
+ % We do not specify any options by default and its recommended not to
+ % change this. If you want to use a4paper, the proper way is to add
+ % a line
+ % \PassOptionsToClass{a4paper}{article}
+ % to your `ltxdoc.cfg'.
+\documentclass{ltxdoc}
+
+ % Only use fontenc if it is present
+ \IfFileExists{fontenc.sty}{%
+ \usepackage[T1]{fontenc}}{}
+
+ % Only use multicol if it is present
+ \IfFileExists{multicol.sty}{%
+ \usepackage{multicol}}{}
+
+ % Only use hyperref if it is present
+ \IfFileExists{hyperref.sty}{%
+ \usepackage[bookmarks,backref,colorlinks,hyperindex]{hyperref}
+ }{%
+ \def\href##1##2{|##2|}
+ }
+
+ % Only use xdoc2 if it is present
+ \IfFileExists{xdoc2.sty}{%
+ \usepackage[dolayout]{xdoc2}%
+
+ % Only use docidx2e if it is present
+ \IfFileExists{docidx2e.sty}{%
+ \usepackage{docidx2e}}{}%
+ }{}
+
+ % By default this file will build the `user' documentation. It
+ % covers the basic information you need as an user and provides
+ % (if you want to) a compact index with the most important
+ % commands. To get the `programmer' documentation (with code
+ % listing, extended command index and change history), comment out
+ % the next line
+ \OnlyDescription
+
+ % To produce the compact command index run
+ % makeindex fbithesis.idx -s gind.ist -o fbithesis.ind
+ % or, if you use docindex
+ % makeindex fbithesis.idx -s docindex.ist -o fbithesis.ind
+
+ % If you commented out \OnlyDescription, you are able to control the
+ % index and change history with the following commands:
+
+ % To produce the extended command index: add the following line
+ % one run, then run
+ % makeindex fbithesis.idx -s gind.ist -o fbithesis.ind
+ % and re-process, with or without this line (much faster without)
+ %
+ % This will only have an effect if you commented out
+ % \OnlyDescription above!
+ %\EnableCrossrefs
+
+ % Next you can control the index numbering by the two commands
+ % \PageIndex and \CodelineIndex (I prefer the latter one..). If
+ % you don't want an index, comment out both commands.
+ %
+ % Description index entries refer to page numbers, code listing
+ % index entries refer to code lines
+ \CodelineIndex
+ % Make all index entries (description and code listing) refer to
+ % page numbers (if you add the following line you should comment
+ % out the \CodelineIndex)
+ %\PageIndex
+
+ % Produce a 2 column index (if ever)
+ \setcounter{IndexColumns}{2}
+
+ % To produce a change history: add the following line for one run,
+ % then run
+ % makeindex fbithesis.glo -s gglo.ist -o fbithesis.gls
+ % or, if you use docindex
+ % makeindex fbithesis.glo -s docindex.ist -o fbithesis.gls
+ % and re-process, with or without this line (faster without)
+ %\RecordChanges
+
+\begin{document}
+ \DocInput{fbithesis.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \changes{v0.3c}{2002/04/01}{Env: \cmd{\ifmulticols} implemented}
+% \changes{v0.4f}{2002/07/05}{Env: \cmd{\ifmulticols} corrected}
+% \changes{v1.1l}{2003/09/11}{Env: \cmd{\ifxdoc} and
+% \cmd{\ifdocidx} implemented}
+%^^A =================================================================
+%^^A We continue with the `normal' .dtx-file.
+%^^A Check the environment we are confirmed with:
+%^^A - If there is multicol.sty, we'll print the table of contents
+%^^A with 2 columns
+%^^A - If there is xdoc2.sty, we'll use its great possibilities
+%^^A - If there is docidx2e.sty, we'll use it for an enhanced index
+%^^A and glossar
+%^^A =================================================================
+% \newif\ifmulticols
+% \IfFileExists{multicol.sty}{\multicolstrue}{\multicolsfalse}
+% \newif\ifxdoc
+% \IfFileExists{xdoc2.sty}{\xdoctrue}{\xdocfalse}
+% \newif\ifdocidx
+% \IfFileExists{docidx2e.sty}{\docidxtrue}{\docidxfalse}
+%
+% \changes{v1.1l}{2003/09/11}{Defs: \cmd{\Lswitch} implemented}
+% \changes{v1.1l}{2003/09/11}{Defs: \texttt{xdoc2}-stuff}
+% \changes{v1.2a}{2004/12/30}{Defs: \cmd{\describefile} corrected}
+% \changes{v1.2b}{2005/01/03}{Defs: \cmd{\describeoption}
+% corrected}
+% \changes{v1.2b}{2005/01/07}{Defs: \cmd{\ctanurl} implemented}
+% \changes{v1.2j}{2006/10/25}{Defs: \cmd{\NEW*} corrected}
+%^^A =================================================================
+%^^A Some definitions to enhance the logical mark-up of this
+%^^A documentation
+%^^A =================================================================
+% \makeatletter
+% ^^A for environments (`\cmd' for commands is already defined in
+% ^^A \package{ltxdoc.cls})
+% \DeclareRobustCommand*{\env}[1]{\texttt{#1}}
+% ^^A for packages, styles, classes
+% \DeclareRobustCommand*{\package}[1]{\texttt{#1}}
+% ^^A for programs
+% \DeclareRobustCommand*{\program}[1]{\textsf{#1}}
+% ^^A for eMails, urls
+% \DeclareRobustCommand*{\url}[1]{\href{#1}{|#1|}}
+% ^^A for URLs to CTAN
+% \DeclareRobustCommand*{\ctanurl}[1]
+% {\href{ftp://ftp.dante.de/pub/#1}{\ctan: |#1|}}
+% ^^A for files, paths and command-lines
+% \DeclareRobustCommand*{\file}[1]{\texttt{#1}}
+% ^^A for persons
+% \DeclareRobustCommand*{\person}[1]{\textsc{#1}}
+% ^^A for counters
+% \DeclareRobustCommand*{\Lcount}[1]{\textsl{\small#1}}
+% ^^A for length registers
+% \DeclareRobustCommand*{\Llength}[1]{\cmd{#1}}
+% ^^A for switches
+% \DeclareRobustCommand*{\Lswitch}[1]{\texttt{#1}}
+% ^^A for package options
+% \DeclareRobustCommand*{\Lopt}[1]{\textsf{#1}}
+% ^^A for quotations
+% \DeclareRobustCommand*{\qm}[1]{``#1''}
+% ^^A for mail addresses
+% \DeclareRobustCommand*{\mail}[2][]
+% {\ifx\empty#1\empty\else\textless\person{#1}\textgreater^^A
+% \space\fi\url{#2}}
+% \DeclareRobustCommand*{\smiley}{|:-)|}
+% \DeclareRobustCommand*{\winkey}{|;-)|}
+% \DeclareRobustCommand*{\tds}{TDS}
+% \DeclareRobustCommand*{\ctan}{\textsc{ctan}}
+% \let\describemacro=\DescribeMacro
+%^^A From scrlogo.dtx:
+% \DeclareRobustCommand*{\koma}{\textsf{K\kern.05em O\kern.05em^^A
+% M\kern.05em A\kern.1em-\kern.1em Script}}
+%^^A From amsdtx.dtx:
+% \DeclareRobustCommand*{\ams}{{\protect\usefont{OMS}{cmsy}{m}{n}^^A
+% A\kern-.1667em\lower.5ex\hbox{M}\kern-.125emS}}
+%^^A From ltxguide.cls:
+% \newcommand*{\NEWfeature}[1]{^^A
+% \marginpar{\small\sffamily\raggedright^^A
+% New feature\par#1}}
+% \DeclareRobustCommand*{\NEWdescription}[1]{^^A
+% \marginpar{\small\sffamily\raggedright^^A
+% New description\par#1}}
+%^^A From xdoc2.dtx:
+% ^^A make linebreaks easier:
+% \DeclareRobustCommand*{\B}{\penalty\exhyphenpenalty}
+% \ifxdoc
+% \NewMacroEnvironment{length}{\XD@grab@harmless@asmacro}{1}
+% {^^A
+% \cs{#1} length}{^^A
+% \XDMainIndex{\LevelSorted{#1}{\cs{#1} length}}^^A
+% \XDMainIndex{^^A
+% \LevelSame{lengths:}\LevelSorted{#1}{\cs{#1}}^^A
+% }}%
+% {{#1 length}{\cs{#1} length}}%
+% {}%
+% \NewMacroEnvironment{counter}{\XD@grab@harmless@asmacro}{1}
+% {^^A
+% \cs{#1} counter}{^^A
+% \XDMainIndex{\LevelSorted{#1}{\cs{#1} counter}}^^A
+% \XDMainIndex{^^A
+% \LevelSame{lengths:}\LevelSorted{#1}{\cs{#1}}^^A
+% }}%
+% {{#1 counter}{\cs{#1} counter}}%
+% {}%
+% \let\option=\relax
+% \let\endoption=\relax
+% \NewMacroEnvironment{option}{\XD@grab@harmless\relax}{1}
+% {^^A
+% \Lopt{#1} option}{^^A
+% \XDMainIndex{\LevelSorted{#1}{\Lopt{#1} option}}^^A
+% \XDMainIndex{^^A
+% \LevelSame{options:}\LevelSorted{#1}{\Lopt{#1}}^^A
+% }}%
+% {{#1 option}{\Lopt{#1} option}}%
+% {}%
+% \let\describeoption=\relax^^A
+% \NewDescribeCommand{\describeoption}
+% {^^A
+% \XD@grab@harmless\relax}{1}{^^A
+% \GenericDescribePrint{option \Lopt{#1}}^^A
+% \IndexEntry{^^A
+% \LevelSame{options:}\LevelSorted{#1}{\Lopt{#1}}^^A
+% }{usage}{\thepage}^^A
+% \IndexEntry{^^A
+% \LevelSorted{#1}{\Lopt{#1} option}^^A
+% }{usage}{\thepage}^^A
+% }%
+% \let\switch=\relax
+% \let\endswitch=\relax
+% \NewMacroEnvironment{switch}{\XD@grab@harmless\relax}{1}
+% {^^A
+% \Lswitch{#1} switch}{^^A
+% \MakeSortKey{\XD@last@key}{#1}{}^^A
+% \XDMainIndex{^^A
+% \LevelSorted{\XD@last@key}{\texttt{#1} switch}}^^A
+% \XDMainIndex{\LevelSorted{if#1}{\cs{if#1}}}^^A
+% \MakeSortKey{\@tempa}{#1true}{}^^A
+% \XDMainIndex{^^A
+% \LevelSorted{\@tempa}{\cs{#1true}}}^^A
+% \MakeSortKey{\@tempa}{#1false}{}^^A
+% \XDMainIndex{^^A
+% \LevelSorted{\@tempa}{\cs{#1false}}}^^A
+% \XDMainIndex{^^A
+% \LevelSame{switches}\LevelSorted{^^A
+% \XD@last@key}{\texttt{#1}}^^A
+% }}%
+% {{#1}{\Lswitch{#1} switch}}%
+% {^^A
+% \DoNotIndexHarmless{if#1}^^A
+% \DoNotIndexHarmless{#1true}^^A
+% \DoNotIndexHarmless{#1false}^^A
+% }^^A
+% \NewMacroEnvironment{documentation}{^^A
+% \XD@grab@harmless\relax}{1}{}{^^A
+% \IndexEntry{^^A
+% \LevelSorted{#1}{#1 (documentation)}^^A
+% }{none}{\thepage}^^A
+% \IndexEntry{^^A
+% \LevelSame{documentation:}\LevelSorted{#1}{#1}^^A
+% }{none}{\thepage}^^A
+% }%
+% {{#1}{#1}}%
+% {}^^A
+% \NewDescribeCommand{\describefile}{\XD@grab@marg\relax}{1}
+% {^^A
+% \protected@edef\@temp{\file{#1}}^^A
+% \GenericDescribePrint{file \@temp}^^A
+% \IndexEntry{\LevelSorted{#1}{\@temp (file)}}
+% {usage}{\thepage}^^A
+% \IndexEntry{\LevelSame{files:}\LevelSorted{#1}{\@temp}}
+% {usage}{\thepage}}^^A
+% \else
+% ^^A dummy-implementations for xdoc2-based macros:
+% \newcommand*{\describecsfamily}[1]{^^A
+% \leavevmode
+% \GenericDescribePrint{\MacroFont\Bslash#1}^^A
+% \ignorespaces}
+% \newcommand*{\describeoption}[1]{^^A
+% \leavevmode
+% \GenericDescribePrint{option \Lopt{#1}}^^A
+% \ignorespaces}
+% \newcommand*{\describefile}[1]{^^A
+% \leavevmode
+% \GenericDescribePrint{file \file{#1}}^^A
+% \ignorespaces}
+% \newcommand*{\GenericDescribePrint}[1]{^^A
+% \marginpar{\raggedleft\strut #1}}
+% \newcommand*{\DoNotIndexBy}[1]{}
+% \DeclareRobustCommand*{\Bslash}{\bslash}
+% \newenvironment{option}[1]{\trivlist\item[]}{\endtrivlist}%
+% \newenvironment{length}[1]{\trivlist\item[]}{\endtrivlist}%
+% \newenvironment{switch}[1]{\trivlist\item[]}{\endtrivlist}%
+% \newenvironment{documentation}[1]{^^A
+% \trivlist\item[]}{\endtrivlist}^^A
+% ^^A\@ifpackagelater{doc}{2000/05/20}{}{%
+% ^^A \let\XD@fragile@meta=\meta
+% ^^A \def\meta{%
+% ^^A \ifx \protect\@typeset@protect
+% ^^A \expandafter\futurelet \expandafter\@let@token
+% ^^A \expandafter\XD@fragile@meta
+% ^^A \else
+% ^^A \noexpand\meta
+% ^^A \fi
+% ^^A }%
+% ^^A}%
+% \fi
+% ^^A When using docidx2e we remember the user to use docindex.ist
+% ^^A instead of gglo.ist and gind.ist
+% \ifdocidx
+% \AtEndDocument{%
+% \typeout{************************************}%
+% \typeout{* \space Use docindex.ist when sorting \space\space *}%
+% \typeout{* fbithesis.idx and fbithesis.glo! *}%
+% \typeout{************************************}%
+% }%
+% \fi
+%
+% \changes{v1.2j}{2006/10/25}{optical changes to the toc}
+%^^A =================================================================
+%^^A Changes to article
+%^^A =================================================================
+% \ifmulticols
+% \renewcommand*\l@section[2]{%
+% \ifnum \c@tocdepth >\z@
+% \addpenalty\@secpenalty
+% \addvspace{1.0em \@plus\p@}%
+% \setlength\@tempdima{0.8em}%
+% \begingroup
+% \parindent \z@ \rightskip \@pnumwidth
+% \parfillskip -\@pnumwidth
+% \leavevmode \bfseries
+% \advance\leftskip\@tempdima
+% \hskip -\leftskip
+% #1\nobreak\hfil \nobreak\hb@xt@\@pnumwidth{\hss #2}\par
+% \endgroup
+% \fi}
+% \renewcommand*{\l@subsection}{\@dottedtocline{2}{0.8em}{1.6em}}
+% \renewcommand*{\l@subsubsection}{\@dottedtocline{3}{2.4em}{2.4em}}
+% \renewcommand*{\l@paragraph}{\@dottedtocline{4}{4.8em}{3.2em}}
+% \renewcommand*{\l@subparagraph}{\@dottedtocline{5}{8em}{4em}}
+% \fi
+% \makeatother
+%
+%
+%^^A =================================================================
+%^^A Changes concerning the whole document or huge parts of it
+%^^A =================================================================
+% \changes{v0.3a}{2002/03/19}{Docu: major revision (class changes)}
+% \changes{v0.3b}{2002/03/31}{Minor corrections}
+% \changes{v0.3b}{2002/03/31}{Various legal stuff}
+% \changes{v0.4a}{2002/04/04}{Citations}
+% \changes{v0.4e}{2002/04/09}{Minor corrections}
+% \changes{v0.4f}{2002/07/05}{Docu: some minor corrections and
+% enhancements}
+% \changes{v0.4f}{2002/07/05}{Meta-Docu: major enhancements}
+% \changes{v0.4g}{2002/08/11}{Minor corrections}
+% \changes{v0.4h}{2002/08/13}{ID: more (German) keywords}
+% \changes{v0.4h}{2002/08/13}{Minor corrections and enhancements}
+% \changes{v0.5e}{2002/08/30}{Minor corrections and enhancements}
+% \changes{v0.5f}{2002/09/04}{Docu: minor changes}
+% \changes{v0.5f}{2002/09/04}{Meta-Docu: minor changes}
+% \changes{v0.5g}{2002/09/12}{Typos corrected}
+% \changes{v0.5j}{2002/09/21}{Docu: minor changes}
+% \changes{v0.6a}{2002/09/23}{Docu: minor changes}
+% \changes{v0.6d}{2002/10/19}{Docu: minor changes}
+% \changes{v0.7b}{2002/11/13}{Docu: minor changes}
+% \changes{v0.7e}{2002/11/26}{Docu: minor changes and enhancements}
+% \changes{v0.7f}{2002/11/28}{Minor optimizations}
+% \changes{v0.7h}{2002/12/12}{Docu: minor changes}
+% \changes{v0.8a}{2002/12/16}{LPPL removal}
+% \changes{v0.8a}{2002/12/16}{Minor corrections}
+% \changes{v0.8b}{2002/12/20}{ID: legal stuff reduced}
+% \changes{v0.8d}{2002/12/31}{Minor changes}
+% \changes{v0.8e}{2003/01/01}{Minor changes and corrections}
+% \changes{v0.8f}{2003/01/03}{Docu: changes and enhancements}
+% \changes{v1.0b}{2003/01/05}{Docu: many changes, corrections and
+% enhancements}
+% \changes{v1.0c}{2003/01/07}{Docu: \cmd{\mail}}
+% \changes{v1.0d}{2003/01/08}{whole bunch of typos fixed}
+% \changes{v1.1a}{2003/01/09}{Docu: \cmd{\NEW}-commands}
+% \changes{v1.1b}{2003/01/30}{Typos fixed}
+% \changes{v1.1c}{2003/02/07}{Docu: \cmd{\ams}-command}
+% \changes{v1.1k}{2003/07/28}{Docu: CTAN-hierarchy has changed: no
+% distinction between `supported' and `other'}
+% \changes{v1.1k}{2003/07/28}{Docu: \cmd{\B}-command}
+% \changes{v1.1k}{2003/07/28}{Docu: \cmd{\program}-command}
+% \changes{v1.1k}{2003/07/28}{Docu: \cmd{\describe}-commands}
+% \changes{v1.1k}{2003/07/28}{Docu: \env{option}, \env{length} and
+% \env{switch} environments}
+% \changes{v1.1l}{2003/09/11}{Docu: \env{documentation}
+% environment}
+% \changes{v1.2b}{2005/01/05}{Docu: \cmd{\ref}s corrected}
+% \changes{v1.2b}{2005/01/07}{Docu: \cmd{ctanurl} used}
+%
+%^^A =================================================================
+%^^A Even with enabled crossrefs do not index all macros.
+%^^A =================================================================
+%
+%^^A The \cmd{\DoNotIndexBy}-calls have to be placed before the
+%^^A \cmd{\DoNotIndex}-calls
+% \DoNotIndexBy{@}
+% \DoNotIndexBy{fbi@}
+%
+% \DoNotIndex{\@empty}
+% \DoNotIndex{\@for}
+% \DoNotIndex{\@ifundefined}
+% \DoNotIndex{\@maketitle}
+% \DoNotIndex{\@ne}
+% \DoNotIndex{\@plus}
+% \DoNotIndex{\@tempboxa, \@tempcnta, \@tempdima, \@temptokena}
+% \DoNotIndex{\\, \", \{, \} }
+% \DoNotIndex{\addtolength, \AtEndDocument, \advance}
+% \DoNotIndex{\afterassignment}
+% \DoNotIndex{\begin, \begingroup, \bf, \bfseries, \box}
+% \DoNotIndex{\baselineskip, \backslash}
+% \DoNotIndex{\ClassError, \ClassWarning, \ClassWarningNoLine}
+% \DoNotIndex{\ClassInfo, \CurrentOption, \cdot, \count, \csname}
+% \DoNotIndex{\centering, \cleardoublepage, \clearpage}
+% \DoNotIndex{\DeclareRobustCommand, \def, \documentclass}
+% \DoNotIndex{\DeclareOption, \dimen, \divide, \do}
+% \DoNotIndex{\else, \end, \ExecuteOptions, \endgroup}
+% \DoNotIndex{\expandafter, \endcsname}
+% \DoNotIndex{\fontfamily, \fontseries, \fontsize}
+% \DoNotIndex{\footnoterule, \footnotesize, \frontmatter}
+% \DoNotIndex{\fboxrule, \fboxsep \framebox, \filename@ext}
+% \DoNotIndex{\fi, \filedate, \fileversion, \filename@parse}
+% \DoNotIndex{\gdef, \global, \GenericWarning, \Gin@sepdefault}
+% \DoNotIndex{\Ginput@path, \Gin@temp, \Gin@getbase, \Gin@ext}
+% \DoNotIndex{\Gin@extensions}
+% \DoNotIndex{\hfill, \hfil, \hskip, \hspace, \hbox, \hss, \hb@xt@}
+% \DoNotIndex{\headheight, \headsep, \ht, \hoffset}
+% \DoNotIndex{\IfFileExists, \InputIfFileExists, \ifx, \if}
+% \DoNotIndex{\input@path}
+% \DoNotIndex{\kern}
+% \DoNotIndex{\LARGE, \Large, \large, \let, \lineskip, \LoadClass}
+% \DoNotIndex{\line, \linethickness}
+% \DoNotIndex{\mainmatter, \mbox, \MessageBreak, \makebox}
+% \DoNotIndex{\multiput, \m@ne}
+% \DoNotIndex{\newcommand, \newlength, \null, \noexpand, \newbox}
+% \DoNotIndex{\newif, \next@tpage, \noindent}
+% \DoNotIndex{\oddsidemargin}
+% \DoNotIndex{\par, \PackageError, \PackageWarningNoLine, \put}
+% \DoNotIndex{\PassOptionsToClass, \ProcessOptions}
+% \DoNotIndex{\providecommand}
+% \DoNotIndex{\protect, \parbox}
+% \DoNotIndex{\relax, \renewcommand, \rule, \RequirePackage}
+% \DoNotIndex{\selectfont, \setcounter, \setlength, \small}
+% \DoNotIndex{\setbox, \space, \stop, \scriptsize, \string}
+% \DoNotIndex{\today, \texttt, \typeout, \thinlines, \the}
+% \DoNotIndex{\textwidth, \thispagestyle, \topmargin, \topskip}
+% \DoNotIndex{\usepackage, \undefined, \unitlength, \unkern}
+% \DoNotIndex{\vfil, \vskip, \vbox, \vss, \vspace, \vfill}
+% \DoNotIndex{\voffset}
+% \DoNotIndex{\wd}
+% \DoNotIndex{\z@}
+%
+%^^A =================================================================
+%^^A After this the commands \filedate and \fileversion are defined
+%^^A =================================================================
+% \GetFileInfo{fbithesis}
+%
+%^^A =================================================================
+%^^A Title definition
+%^^A =================================================================
+% \title{The \package{\filename}~package\thanks{This file has
+% version number \fileversion. It was last revised on \filedate,
+% the documentation is dated \docdate.}}
+% \author{Andre
+% Dierker\thanks{\url{dierker@kand.de}}}
+% \date{Printed on \today}
+% \maketitle
+%
+% \begin{documentation}{Abstract}
+% \changes{v0.3c}{2002/04/01}{revised}
+% \changes{v0.8a}{2002/12/16}{changed (LPPL removal)}
+% \changes{v1.2j}{2006/10/23}{enhanced}
+%^^A =================================================================
+%^^A A small abstract
+%^^A =================================================================
+% \begin{abstract}
+% \package{\filename.cls} is a \LaTeXe\ document-class tuned for
+% research reports or internal reports like master/phd-theses at
+% the TU Dortmund University.
+%
+% At the Department of Computer Science at the TU
+% Dortmund there are cardboard cover pages for internal reports
+% like master/phd-theses. The main function of the \LaTeX2e\
+% document-class provided by this package is a replacement for
+% the \cmd{maketitle} command to typeset a title page that is
+% adjusted to these cover pages.
+%
+% See \file{README} for a short overview and additional
+% (legal) information and \file{example.tex} for---of course---an
+% example.
+% \end{abstract}
+% \end{documentation}
+%
+% \begin{documentation}{TOC}
+% \changes{v0.3c}{2002/04/01}{two columns (copied from
+% \package{doc.dtx})}
+% \changes{v0.7f}{2002/11/28}{use \cs{AtEndDocument}}
+%^^A =================================================================
+%^^A Open a multicols-env. here. (And close it at the end of the
+%^^A document...)
+%^^A Note: this solution could lead to problems! (See multitoc.dtx
+%^^A by Martin Schr\"oder)
+%^^A =================================================================
+% \ifmulticols
+% \addtocontents{toc}{\protect\begin{multicols}{2}}
+% \fi
+%
+% {\parskip 0pt ^^A We have to reset \parskip (bug in \LaTeX,
+% ^^A see doc.dtx)
+% \tableofcontents
+% }
+% \end{documentation}
+%
+% \begin{documentation}{Introduction}
+% \changes{v0.3c}{2002/04/01}{revised}
+% \changes{v0.4h}{2002/08/13}{new paragraph dealing with templates}
+% \changes{v0.5d}{2002/08/29}{rearranged}
+% \changes{v0.7b}{2002/11/13}{new figure showing title page}
+% \changes{v0.7b}{2002/11/13}{new paragraph concerning the
+% imitation}
+% \changes{v0.8e}{2003/01/01}{fixed bad phrasing}
+% \changes{v1.2j}{2006/10/25}{decoration explained}
+% \changes{v1.2m}{2011/02/06}{renaming of uni and fbi}
+%^^A =================================================================
+%^^A Short description of what is done by the package
+%^^A Miscellaneous comments
+%^^A =================================================================
+% \section{Introduction}
+% \label{sec:intro}
+%
+% At the Department of Computer Science at the TU Dortmund
+% University there are cardboard cover
+% pages (see figure \ref{fig:cover} on page \pageref{fig:cover})
+% for internal reports like master/phd-theses. The main function
+% of the \LaTeXe\ document-class \package{\filename} is to replace
+% the \cmd{\maketitle}~command to typeset a title page that is
+% adjusted to these cover pages (see figure \ref{fig:fbititle} on
+% page \pageref{fig:fbititle}).
+%
+% \begin{figure}
+% \centering
+% \setlength{\unitlength}{0.25cm}
+% \begin{picture}(21,29.7)
+% \thicklines
+% \put(0,0){\framebox(21,29.7){\mbox{}}}
+% \put(2.9,15.4){\framebox(9.2,9.1){\mbox{}}}
+% \put(1.6,25.65){\rule{1.375mm}{1.375mm}}
+% \thinlines
+% \put(15,20){\vector(-1,0){4}}
+% \put(15.4,20){\makebox(0,0)[l]{window}}
+% \put(2.9,26.5){\framebox(9.2,0.5){\mbox{}}}
+% \put(7.5,26.5){\makebox(0,0)[b]{\tiny\sffamily
+% UNIVERSIT\"{A}T DORTMUND}}
+% \put(2.9,25.6){\framebox(9.2,0.5){\mbox{}}}
+% \put(7.5,25.6){\makebox(0,0)[b]{\tiny\sffamily FACHBEREICH
+% INFORMATIK}}
+% \put(2.9,13.6){\framebox(9.2,0.5){\mbox{}}}
+% \put(7.5,13.6){\makebox(0,0)[b]{\tiny\sffamily INTERNE
+% BERICHTE}}
+% \put(2.9,12.75){\framebox(9.2,0.5){\mbox{}}}
+% \put(7.5,12.75){\makebox(0,0)[b]{\tiny\sffamily INTERNAL
+% REPORTS}}
+% \put(16.1,3.55){\makebox(0,0)[b]{\tiny\sffamily D-44221
+% DORTMUND}}
+% \thicklines
+% \put(12,3.25){\line(1,0){8.4}}
+% \put(12,4.35){\line(1,0){8.4}}
+% \end{picture}
+% ^^A
+% \caption{A rough outline of the \mbox{DIN-A4}~cardboard cover
+% page for diploma and doctoral theses and project reports
+% provided by the Department of Computer Science at the
+% TU Dortmund. The title page of the document is
+% visible through the window.}
+% ^^A
+% \label{fig:cover}
+% \end{figure}
+% \begin{figure}
+% \centering
+% \setlength{\unitlength}{0.25cm}
+% \begin{picture}(21,29.7)
+% \thicklines
+% \put(0,0){\framebox(21,29.7){\mbox{}}}
+% \put(1.6,25.65){\rule{1.375mm}{1.375mm}}
+% \thinlines
+% \put(7.5,26.5){\makebox(0,0)[b]{\tiny\sffamily
+% UNIVERSIT\"{A}T DORTMUND}}
+% \put(7.5,25.6){\makebox(0,0)[b]{\tiny\sffamily FACHBEREICH
+% INFORMATIK}}
+% \put(18.4,25.6){\framebox(2,1.5){\mbox{}}}
+% \put(7.5,23){\makebox(0,0)[c]{\tiny Your Name}}
+% \put(7.5,20){\makebox(0,0)[c]{\scriptsize The Title}}
+% \put(7.5,16.5){\makebox(0,0)[b]{\tiny Date}}
+% \put(13,15.4){\framebox(7.4,9.1){\mbox{}}}
+% \put(16.7,21){\makebox(0,0)[b]{\tiny\ttfamily additional}}
+% \put(16.7,20){\makebox(0,0)[b]{\tiny\ttfamily optional}}
+% \put(16.7,19){\makebox(0,0)[b]{\tiny\ttfamily logo}}
+% \put(19.4,26){\makebox(0,0)[b]{\tiny\ttfamily logo}}
+% \put(7.5,13.6){\makebox(0,0)[b]{\tiny\sffamily INTERNE
+% BERICHTE}}
+% \put(7.5,12.75){\makebox(0,0)[b]{\tiny\sffamily INTERNAL
+% REPORTS}}
+% \put(2.9,9.5){\makebox(0,0)[lb]{\tiny Address}}
+% \put(2.9,9){\makebox(0,0)[lb]{\tiny of Chair}}
+% \put(2.9,7.5){\makebox(0,0)[lb]{\tiny Supervisors}}
+% \put(16.4,7){\framebox(4,3){\mbox{}}}
+% \put(18.4,8){\makebox(0,0)[b]{\tiny\ttfamily chair logo}}
+% \put(16.1,3.55){\makebox(0,0)[b]{\tiny\sffamily D-44221
+% DORTMUND}}
+% \thicklines
+% \put(12,3.25){\line(1,0){8.4}}
+% \put(12,4.35){\line(1,0){8.4}}
+% \end{picture}
+% ^^A
+% \caption{The title page as generated by \package{\filename}.
+% The important part of the title page (author, title and date)
+% is visible through the window in the cover page. This sketch
+% can only give you a very coarse impression. For a more
+% authentic one use the example (see section \ref{sec:example}
+% on the pages \pageref{sec:example}ff).}
+% ^^A
+% \label{fig:fbititle}
+% \end{figure}
+%
+% As you can see the title page is not only adjusted to the
+% cardboard, but even imitates the cover: it repeats the text found
+% on the cover page. Usually theses are presented to the world in
+% two shapes: printed on paper or electronically (e.g.\ as a
+% \mbox{PDF} or PostScript file). In the first case the repetition
+% is not necessary, in the second (electronical) case one would
+% miss important information without it. Since it doesn't hurt in
+% the paper case I decided to make it possible to repeat this
+% `decoration' of the cover page on the title page (see options
+% \Lopt{decor} and \Lopt{nodecor} in section \ref{subsec:options}).
+%
+% This package doesn't make much sense outside of Germany or even
+% outside the TU Dortmund. Nevertheless the
+% documentation is in English. This shouldn't be a problem
+% nowadays and it's a good training for me \winkey
+% \end{documentation}
+%
+% \begin{documentation}
+% \changes{v1.2m}{2011/02/06}{new}
+% \subsection{Why the name?}
+%^^A =================================================================
+%^^A The history of `FBI'
+%^^A =================================================================
+% \label{subsec:name}
+%
+% When this package was created, the Department of Computer Science
+% had the name `\textbf{F}ach\textbf{b}ereich \textbf{I}nformatik'
+% in german. The abbreviation `FBI' was quite common in those
+% days. Since the package is meant for that department I used the
+% abbreviation for my package. (And of course because its kinda
+% cool \winkey)
+%
+% In the meantime however the `Universität Dortmund' was
+% renamed to `Technische Universität Dortmund' (technical
+% university of Dortmund) and the department to `Fakultät für
+% Informatik'.
+% \end{documentation}
+%
+% \begin{documentation}{Other packages}
+% \changes{v0.7c}{2002/11/20}{new}
+% \changes{v1.2e}{2006/01/03}{correct links to packages}
+% \changes{v1.2g}{2006/07/11}{Note \package{udotitle}}
+% \changes{v1.2k}{2008/02/17}{Note \package{pgthesis}}
+% \subsection{Other packages}
+% \label{subsec:other}
+%
+% Apart from \package{\filename} there is at least one more
+% approach that deals with the same subject. This is
+% \package{diplomatitle}\footnote{\url{http://ls6-www.cs.uni-dortmund.de/\symbol{126}leineweb/tex/interneBerichte/}
+% (Some of the files aren't reachable. Perhaps you have to contact
+% the author first.)} by \person{Thomas Leineweber}\footnote{\mail[Thomas
+% Leineweber]{leineweb@ls6.cs.uni-dortmund.de}}.
+% \package{diplomatitle} isn't officially released. It hasn't left
+% development status yet and it is doubtful if it ever will, as
+% the author seems to have abandoned active development.
+%
+% \NEWdescription{2008/02/17 v1.2k}Together with \person{Thomas},
+% \person{Marc Seitz}\footnote{\mail[Marc
+% Seitz]{marc@marcseitz.de}} worte \package{pgthesis} which is
+% based on \package{\filename}. It aims at final reports of project
+% groups (Projektgruppen Endberichte) but isn't yet officially
+% released. If you are interested please contact the authors.
+%
+% Some other approaches use the \env{titlepage}~environment and
+% provide a sort of template for the title page. Representatives
+% of these approaches are for example the
+% `\LaTeX-Templates'\footnote{\url{http://ls7-www.cs.uni-dortmund.de/\symbol{126}kohler/verschiedenes/LaTeX-Templates.tgz}}
+% by \person{Kohler}\footnote{\mail[Markus
+% Kohler]{markus.kohler@uni-dortmund.de}} or
+% `daTitelblatt'\footnote{\url{http://ls11-www.cs.uni-dortmund.de/resources/docs/daLatex/daTitelblatt.tex}}
+% by \person{Dittrich}\footnote{\mail[Peter
+% Dittrich]{gisbert.dittrich@udo.edu}}. Of course these
+% template-approaches give a great flexibility to the user. On the
+% other hand the necessary customization often
+% requires a deeper knowledge of \LaTeX.
+%
+% \NEWdescription{2006/07/11 v1.2g}Additionally there is
+% \package{udotitle}\footnote{\url{http://www.forum.fset.de/}} by
+% \person{Gerd Sebastiani}. This package however does not produce a
+% title page to be used with the cardboard of the department of
+% computer science but complies with the official corporate design
+% of the university.
+% \end{documentation}
+%
+% \begin{documentation}{New}
+% \changes{v1.2d}{2005/12/14}{written}
+% \changes{v1.2e}{2006/01/03}{\Lopt{decor} added}
+% \changes{v1.2i}{2006/09/10}{References added}
+% \changes{v1.2i}{2006/09/10}{\Lopt{declaration} added}
+% \changes{v1.2m}{2011/02/06}{renaming of uni and fbi}
+%^^A =================================================================
+%^^A Compared to the last major version, what's new in this one
+%^^A =================================================================
+% \subsection{What's new}
+% \label{subsec:new}
+%
+% \NEWdescription{2006/09/10 v1.2i}Since the last stable version
+% v1.0d (2003/01/08) some new features were added:
+% \begin{enumerate}
+% \item compatibility with the \ams-classes (\package{amsbook} or
+% \package{amsreport}) as baseclasses (see section
+% \ref{subsubsec:ams} on page \pageref{subsubsec:ams})
+% \item better handling of baseclass-specific macros
+% \item new options \Lopt{decor} and \Lopt{nodecor} (see section
+% \ref{subsubsec:decor} on page \pageref{subsubsec:decor})
+% \item better warnings if needed files could not be found
+% \item new options \Lopt{ngerman} and \Lopt{american} (see section
+% \ref{subsubsec:language} on page \pageref{subsubsec:language})
+% \item new options \Lopt{declaration} and \Lopt{nodeclaration}
+% (see section \ref{subsubsec:declaration} on page
+% \pageref{subsubsec:declaration})
+% \item since the last public release the university and the
+% department were renamed.
+% \end{enumerate}
+%
+% \end{documentation}
+%
+% \begin{documentation}{Needs}
+% \changes{v0.3e}{2002/04/04}{update (class changes)}
+% \changes{v0.4e}{2002/04/09}{update (\package{german.sty} and
+% \package{scrbook})}
+% \changes{v0.5j}{2002/09/21}{update (\package{graphicx.sty})}
+% \changes{v0.7b}{2002/11/13}{add reasons}
+% \changes{v0.7h}{2002/12/12}{restrict \package{graphicx}}
+% \changes{v0.7i}{2002/12/14}{suggest latest \koma-version}
+% \changes{v1.1b}{2003/01/30}{update \koma-version}
+% \changes{v1.1c}{2003/02/07}{support \ams}
+% \changes{v1.2b}{2005/01/17}{killed spaces}
+% \changes{v1.2d}{2005/12/14}{update \koma-version}{}
+%^^A =================================================================
+%^^A What is required?
+%^^A What is recommended?
+%^^A What is supported?
+%^^A =================================================================
+% \subsection{What do you need}
+% \label{subsec:need}
+%
+% There are some packages, that are required with the use of
+% \package{\filename}. Some others are recommended.
+% \begin{enumerate}
+% \item Packages, that are essentially required by
+% \package{\filename}:
+% \begin{enumerate}
+% \item \LaTeXe\ (at least the 1994/12/01~release)^^A
+% \footnote{\ctanurl{macros/latex/base}}
+%
+% \package{\filename} is a \LaTeXe\ document-class. So
+% obviously you'll need \LaTeXe\ldots
+% \item \package{graphicx}\footnote{\ctanurl{^^A
+% macros/latex/required/graphics/graphicx.dtx}} (at least
+% 1996/08/05 v1.0a)
+%
+% The logos are included by using the
+% \cmd{\includegraphics}~command provided by
+% \package{graphicx}.
+% \end{enumerate}
+%
+% \item Packages, that are recommended to use with
+% \package{\filename}:
+% \begin{enumerate}
+% \item \package{scrbook} (part of \koma^^A
+% \footnote{\ctanurl{macros/latex/contrib/koma-script} by
+% \person{Frank Neukam} and \person{Markus Kohm}
+% \cite{neukam:scrclass, kohm:komabuch}}, at this time the
+% latest version is 2007/12/24 v2.98)
+%
+% This is a replacement for the (standard)
+% \package{book}~document-class and has many enhancements and
+% useful features.
+% \end{enumerate}
+%
+% \item Packages, that are supported by \package{\filename}:
+% \begin{enumerate}
+% \item \package{amsbook}\NEWfeature{2003/02/07 v1.1c} (part of
+% \ams-\LaTeX^^A
+% \footnote{\ctanurl{macros/latex/required/amslatex} by the
+% \person{American Mathematical Society}
+% \cite{ams:amsclass, ams:instr}}, at this time the
+% latest version is 2004/08/06 v2.20)
+%
+% Like \koma\ this is a replacement for the \package{book}
+% class. This one follows the style conventions of American
+% Mathematical Society publications.
+% \end{enumerate}
+% \end{enumerate}
+%
+% Under normal circumstances you don't have to install any special
+% packages (except \package{\filename} of course: its installation
+% process is described in the next section) since all these should
+% be part of every serious \LaTeX-distribution. If this is not the
+% case you'll find the most recent versions at \ctan\footnote{^^A
+% Comprehensive \TeX{} Archive Network:
+% \url{http://www.ctan.org/}}.
+% \end{documentation}
+%
+% \begin{documentation}{Installation}
+% \changes{v0.3b}{2002/03/31}{new}
+% \changes{v0.3c}{2002/04/01}{extended (PGP)}
+% \changes{v0.4f}{2002/07/05}{extended (\cmd{\usedir})}
+% \changes{v0.5j}{2002/09/21}{extended (config file)}
+% \changes{v0.7b}{2002/11/13}{summary}
+% \changes{v0.8a}{2002/12/16}{changed (LPPL removal)}
+% \changes{v1.2d}{2005/12/20}{added \file{make}-section}
+% \changes{v1.2i}{2006/09/11}{extended}
+% \changes{v1.2j}{2006/10/25}{further extended}
+%^^A =================================================================
+%^^A Installation guide
+%^^A =================================================================
+% \subsection{Installation}
+% \label{subsec:install}
+%
+% The file \describefile{\filename.dtx}\package{\filename.dtx} is
+% an `one-file-contains-it-all'. It contains (of course) the
+% \file{.cls}-file and its documentation (not to forget a
+% customizable driver for the docu), but also the \file{.ins}-batch
+% file, an example and a `read me'.
+%
+% It is recommended to check the integrity of the package before
+% installing. This is done with
+% \describefile{\filename.dtx.asc}\file{\filename.dtx.asc}, an
+% \mbox{OpenPGP} signature made with \program{GnuPG} and the key
+% \texttt{\fontdimen3\font=.5\fontdimen2\font
+% \fontdimen4\font=.3\fontdimen2\font 1024D/F4D24AC9 2002-04-01
+% Andre Dierker (software distribution key)
+% <software@kand.de>}\footnote{\mbox{BTW}: I'm always looking for
+% people to exchange key-signatures. Contact me!}. Verify
+% \file{\filename.dtx.asc} with \program{PGP} or \program{GnuPG}
+% (for \program{GnuPG} this is `\file{gnupg -{}-verify
+% \filename.dtx.asc}') to be sure, you got the complete and
+% unmanipulated distribution.
+%
+% \subsubsection{By Hand}
+% \label{subsubsec:byhand}
+%
+% To start the installation, run \file{\filename.dtx} through
+% \LaTeX\footnote{It is recommended to use \file{pdflatex} instead
+% of \file{latex}. If you prefer an output in \mbox{DVI}-format
+% you can use `\file{pdflatex -ouput-format DVI}'}. This will
+% generate the batch file (\file{\filename.ins}) and a
+% \file{README}. Additionally the documentation
+% (\file{\filename.dvi}) is generated (to get the cross-references
+% right, you have to rerun this twice, however).
+%
+% The actual installation is done by running the newly generated
+% \describefile{\filename.ins}\file{\filename.ins} through \LaTeX.
+% This will generate the \file{\filename.cls}~file, an
+% \file{example.tex}, the documentation driver
+% (\file{\filename.drv}) and a sample configuration file
+% (\file{\filename.cfg}). If you have set
+% \cmd{\BaseDirectory}\footnote{see the documentation of the
+% \program{docstrip}~program: \cite{mittelbach:docstrip}} in your
+% \file{docstrip.cfg}, the document-class \file{\filename.cls} is
+% immediately moved to an appropriate location (e.g.\
+% `\file{\$(TEXMF)/tex/latex/misc/}' with a \tds\footnote{\TeX\
+% Directory Structure, see \cite{twgtds:tds}} compliant \LaTeX\
+% installation). Otherwise you have to move it yourself into a
+% directory searched by \LaTeX. \emph{If you don't know where this
+% could be simply drop the file into your thesis' directory.}
+%
+% Now you could already start since the rest of the installation
+% process is optional.
+%
+% Normally (with a \tds\ installation) all configuration
+% (\file{.cfg}) files are collected in
+% `\file{\$(TEXMF)/tex/latex/config/}'. Since there may be already
+% an older \describefile{\filename.cfg}`\file{\filename.cfg}' that
+% perhaps mustn't be overwritten, you have to move (and merge) the
+% file yourself.
+%
+% To finish the installation it is recommended to move
+% \file{\filename.dvi} and \file{example.tex} to where you collect
+% the documentations (with a \tds\ compliant \LaTeX\ installation
+% this would be `\file{\$(TEXMF)/doc/tex/latex/\filename}' for
+% example).
+%
+% For a demonstration of the possibilities of \package{\filename}
+% see the \describefile{example.tex}example file and run it through
+% \LaTeX.
+%
+% The `\file{pdflatex \filename.dtx}'-run above will---by
+% default---generate the `user' documentation. If you need the
+% full documentation (with complete listing of the documented
+% source code and/or command index and the change history) you may
+% edit \describefile{\filename.drv}\file{\filename.drv} to meet
+% your needs (never edit \file{\filename.dtx} itself!). For more
+% information on the enhanced documentation see
+% \file{\filename.drv} or \file{README}.
+%
+% So, in short you have to do the following:
+% \begin{enumerate}
+% \item Check the integrity of the package: `\file{gnupg -{}-verify
+% \filename.dtx.asc}'
+% \item Generate the documentation: `\file{pdflatex \filename.dtx}'
+% \item Generate the \file{\filename.cls} file: `\file{pdflatex
+% \filename.ins}'
+% \item Finish the documentation: `\file{pdflatex \filename.dtx}'
+% (two times)
+% \item move \file{\filename.cls} (e.g. to your thesis' directory)
+% \item Optional: move \file{\filename.dvi} and \file{example.tex}
+% \end{enumerate}
+%
+% \subsubsection{By \file{make}}
+% \label{subsubsec:bymake}
+%
+% Alternatively you can use \file{make} to do the tasks. In this
+% case you have to do the following:
+% \begin{enumerate}
+% \item Check the integrity of the package: `\file{gnupg -{}-verify
+% \filename.dtx.asc}'
+% \item Generate the documentation: `\file{make doc}'
+% \item Generate the \file{\filename.cls} file: `\file{make
+% install}'
+% \item move \file{\filename.cls} (e.g. to your thesis' directory)
+% \item Optional: move \file{\filename.dvi} and \file{example.tex}
+% \end{enumerate}
+%
+% \end{documentation}
+%
+% \begin{documentation}{Todo}
+% \changes{v0.3e}{2002/04/04}{new one (\emph{baseclass} choose)}
+% \changes{v0.4b}{2002/04/05}{new one (bug fixing)}
+% \changes{v0.4d}{2002/04/07}{removed one (\cmd{\baseclass} stuff)}
+% \changes{v0.4g}{2002/08/11}{new one (enhance to a full
+% thesis-class)}
+% \changes{v0.5e}{2002/08/30}{removed marks stuff and title-enhance
+% stuff}
+% \changes{v0.5j}{2002/09/21}{new one (project groups)}
+% \changes{v0.7d}{2002/11/25}{removed one (\cmd{\fbi@stretchto}
+% stuff)}
+% \changes{v0.7h}{2002/12/12}{removed one (\koma-title)}
+% \changes{v0.7i}{2002/12/14}{new one (alternative layouts)}
+%^^A =================================================================
+%^^A What has to be done?
+%^^A =================================================================
+% \subsection{To do}
+% \label{subsec:todo}
+%
+% At this time the package doesn't offer many features. I plan to
+% add a few as soon as I have the time to:
+% \begin{enumerate}
+% \item The logos of university and department have changed and need
+% to be updated. If someone can provied files, please mail me.
+% \item Better support for final reports of project groups
+% (Projektgruppen Endberichte)
+% \item Provide some alternative layouts
+% \item Provide a \env{titlepage}-like environment to give the user
+% more flexibility.
+% \item Adopt \package{\filename} to the layout of the research
+% reports, a second series with own cover pages. (These use
+% \mbox{DIN-A5} instead of \mbox{DIN-A4} as paper format.)
+% \item At this time \package{\filename} affects only the title
+% page and doesn't interfere with the layout of the rest of the
+% document. Enhance the package to a full `thesis'-class,
+% perhaps by integrating the `\LaTeX-Templates' (see subsection
+% \ref{subsec:other} on page \pageref{subsec:other}f).
+% \item Fix bugs (see subsection \ref{subsec:bugs}), misspellings
+% or whatever.
+% \end{enumerate}
+% If you have any further suggestions for enhancements or
+% corrections feel free to mail me.
+% \end{documentation}
+%
+% \begin{documentation}{Bugs}
+% \changes{v0.6c}{2002/10/15}{new}
+%^^A =================================================================
+%^^A I'm sorry, but there are known bugs
+%^^A =================================================================
+% \subsection{Known Bugs}
+% \label{subsec:bugs}
+%
+% Actually I'm aware of one bug:
+% \begin{itemize}
+% \item To provide the \cmd{\thanks}-mechanism I had to redefine
+% \cmd{\footnote}. At the end of \cmd{\maketitle} the
+% \cmd{\footnote}~command is reset to its original definition.
+% Unfortunately the definition is \emph{not} reset, if there's no
+% \cmd{\maketitle} in your document. A solution is not known.
+% \end{itemize}
+% If you have a solution to fix the bug or if you find a new one I'd
+% be glad to hear\footnote{mail to
+% \mail[Andre Dierker]{dierker@kand.de}} from you!
+% \end{documentation}
+%
+% \begin{documentation}{Thanks}
+% \changes{v0.4f}{2002/07/05}{new}
+% \changes{v1.1i}{2003/06/30}{\person{Klaus} added}
+% \changes{v1.2b}{2005/01/05}{\person{Matthias} added}
+% \changes{v1.2b}{2005/01/05}{QuinScape noted}
+% \changes{v1.2d}{2005/12/20}{added and corrected links}
+% \changes{v1.2e}{2006/01/05}{\person{Roman} and \person{Clemens}
+% added}
+% \changes{v1.2e}{2006/01/05}{\person{Katharina} added}
+% \changes{v1.2f}{2006/04/19}{\person{Hanna} added}
+% \changes{v1.2g}{2006/07/17}{\person{Ralf} added}
+% \changes{v1.2i}{2006/09/11}{\person{Dirk} added}
+% \changes{v1.2l}{2008/07/17}{\person{Noah} added}
+% \changes{v1.2m}{2011/02/06}{\person{Timon} added}
+%^^A =================================================================
+%^^A Thanks
+%^^A =================================================================
+% \subsection{Thanks}
+% \label{subsec:thanks}
+%
+% Thanks go to \person{Stephan Lehmke}, the local \TeX- and
+% \LaTeX-Guru at the University of Dortmund. He put the idea of
+% writing this package into my mind and helped with many tips and
+% hints. Furthermore I'd like to thank \person{Klaus Kramer}. He
+% gave me feedback and pointed me to a bug. Further bugs were found
+% by \person{Matthias Schweinoch} and \person{Ralf Kellermann}.
+%
+% \person{Roman Klinger} suggested to make the decoration optional
+% (see the options \Lopt{decor} and \Lopt{nodecor} in section
+% \ref{subsec:options}, \person{Clemens Renner} proposed the
+% inclusion of a declaration in \package{\filename}, while
+% \person{Dirk F{\"{o}}rsterling} gave feedback to the installation
+% routine.
+%
+% \person{Timon Kelter} provided information about the renaming of
+% university and department and so triggered a new release.
+%
+% Furthermore thanks go to QuinScape^^A
+% \footnote{\url{http://www.QuinScape.de/}}, the company that lets
+% me use my \TeX-Skills to earn a living. They have a great product
+% named DocScape\footnote{\url{http://www.DocScape.de/}}. Do you
+% have a large amount of data, that has to be layouted? Give
+% DocScape\footnote{Contact us: \mail{Norbert.Jesse@QuinScape.de}}
+% a try. It is a solution for data based publishing with a rule
+% based layout. It makes possible a complete automatic but
+% nevertheless extreme flexible layout and produces really high
+% quality output.
+%
+% Finally I want to thank the three most important persons in my
+% life: my wife \person{Katharina}, my daughter
+% \person{Hanna} and my son \person{Noah}. I love you.
+% \end{documentation}
+%
+%^^A =================================================================
+%^^A How to use fbithesis
+%^^A =================================================================
+% \section{Usage}
+% \label{sec:usage}
+%
+% Now lets come to the interesting stuff.
+%
+% \begin{documentation}{Loading}
+% \changes{v0.4d}{2002/04/07}{new (\cmd{\baseclass} stuff)}
+% \changes{v0.5j}{2002/09/21}{merged with Baseclass}
+% \changes{v0.7d}{2002/11/25}{mention default of \cmd{\baseclass}}
+%^^A =================================================================
+%^^A Loading and:
+%^^A What the hell is `\baseclass'?
+%^^A =================================================================
+% \subsection{The \emph{baseclass} and loading}
+% \label{subsec:load}
+%
+% You are free to choose your favorite thesis-document-class as
+% the \emph{baseclass}, since the only part concerned by
+% \package{\filename} is the title page. \package{\filename}
+% doesn't interfere with the layout of the rest of your
+% document.\footnote{However this may change in the future, see
+% subsection \ref{subsec:todo} on page \pageref{subsec:todo}} By
+% default \package{\filename} will use \package{scrbook} (part of
+% \koma, see \cite{neukam:scrclass}) as \emph{baseclass}.
+%
+% You may change the \emph{baseclass} by defining the macro
+% \describemacro{\baseclass}\cmd{\baseclass}.
+% \emph{\textbf{Important:} this has to be done \textbf{before} the
+% \cmd{\documentclass}~command!} (See the example in section
+% \ref{sec:example} on the pages \pageref{sec:example}ff.) For
+% example if you prefer the standard class
+% \package{book} from \LaTeXe\ simply do:
+%\begin{verbatim}
+% \def\baseclass{book}
+%\end{verbatim}
+% Afterwards the class is loaded with:
+%\begin{verbatim}
+% \documentclass{fbithesis}
+%\end{verbatim}
+% You can modify the behaviour of \package{\filename} with options
+% (all available options are described below in subsection
+% \ref{subsec:options}):
+%\begin{verbatim}
+% \documentclass[<options>]{fbithesis}
+%\end{verbatim}
+%
+% You may choose every \LaTeXe-document-class as \emph{baseclass},
+% on condition that it provides a \cmd{\maketitle}~command (and its
+% supportive commands as described in subsection
+% \ref{subsubsec:latex} on page \pageref{subsubsec:latex}) and
+% supports a title page. For example
+% with \package{article} from \LaTeXe\ you have to use its
+% \describeoption{titlepage}\Lopt{titlepage}~option, since
+% \package{article} doesn't generate an explicit title page by
+% default.
+% \end{documentation}
+%
+% \begin{documentation}{Options}
+% \changes{v0.4d}{2002/04/07}{extended (\cmd{\baseclass} stuff)}
+% \changes{v0.5j}{2002/09/21}{updated (marks stuff)}
+% \changes{v0.6a}{2002/09/23}{updated (internationalization)}
+% \changes{v1.1i}{2003/06/30}{\Lopt{ngerman} and \Lopt{american}}
+% \changes{v1.2i}{2006/09/04}{\Lopt{decor} added}
+% \changes{v1.2i}{2006/09/10}{structure changed}
+% \changes{v1.2i}{2006/09/10}{\Lopt{a4paper} added}
+% \changes{v1.2i}{2006/09/16}{\Lopt{declaration} added}
+%^^A =================================================================
+%^^A Available Options
+%^^A =================================================================
+% \subsection{Options}
+% \label{subsec:options}
+%
+% There are several class options available with
+% \package{\filename}. Most of the following options are mutual
+% exclusive. (For example \Lopt{draft} and \Lopt{final};
+% \Lopt{german}/\Lopt{ngerman} and \Lopt{english} /
+% \Lopt{american} and others.) If you do specify two opposing
+% options like in this example
+%\begin{verbatim}
+% \documentclass[draft,final]{fbithesis}
+%\end{verbatim}
+% the last one (in this case \Lopt{final}) `wins'.
+% \NEWdescription{2003/06/30 v1.1i}However both global options are
+% passed to the packages. So in this example
+%\begin{verbatim}
+% \documentclass[english,american]{fbithesis}
+%\end{verbatim}
+% \Lopt{english} will be a kind of fallback if a package doesn't
+% implement the option \Lopt{american}.
+%
+% \subsubsection{\Lopt{draft}/\Lopt{final}}
+%
+% The first two options switch between the
+% \describeoption{draft}\Lopt{draft} and
+% \describeoption{final}\Lopt{final}~mode. The \Lopt{draft}~mode
+% adds some marks to the title page to help with the positioning of
+% the page (see section \ref{sec:custom} on page
+% \pageref{sec:custom}).
+% \end{documentation}
+%\begin{verbatim}
+% \documentclass[draft]{fbithesis}
+%\end{verbatim}
+% In the \Lopt{final}~mode of course no marks are shown.
+%\begin{verbatim}
+% \documentclass[final]{fbithesis}
+%\end{verbatim}
+%
+% \subsubsection{Language options}
+% \label{subsubsec:language}
+%
+% The second bunch of options switches the language. As you can see
+% below (in subsection \ref{subsubsec:fbithesis} on page
+% \pageref{subsubsec:fbithesis}) the supervisors
+% of the thesis can be added to the title page by using the macro
+% \cmd{\supervisors}. These are captioned by `Gutachter:' with the
+% \describeoption{german}\Lopt{german}~option.
+%\begin{verbatim}
+% \documentclass[german]{fbithesis}
+%\end{verbatim}
+% If you want to do your thesis in English, the `Gutachter:' would
+% spoil the effect. It is replaced by `Supervisors:' with the
+% \describeoption{english}\Lopt{english}~option.
+%\begin{verbatim}
+% \documentclass[english]{fbithesis}
+%\end{verbatim}
+%
+% \NEWfeature{2003/06/30 v1.1i}There are two more class options:
+% \describeoption{ngerman}\Lopt{ngerman} and
+% \describeoption{american}\Lopt{american}. These are just
+% synonyms for \describeoption{german}\Lopt{german} and
+% \describeoption{english}\Lopt{english}. Since class (or global)
+% options are passed to the imported styles (by \cmd{\usepackage})
+% the synonyms can make things easier: you don't have to specify
+% the optional argument with language-specific packages. So you
+% can write
+%\begin{verbatim}
+% \documentclass[ngerman]{fbithesis}
+% \usepackages{babel}
+%\end{verbatim}
+% instead of
+%\begin{verbatim}
+% \documentclass[german]{fbithesis}
+% \usepackages[ngerman]{babel}
+%\end{verbatim}
+% The language \describeoption{ngerman}\Lopt{ngerman} is the
+% default choice.
+%
+% \subsubsection{\Lopt{decor}/\Lopt{nodecor}}
+% \label{subsubsec:decor}
+%
+% \begin{figure}
+% \centering
+% \setlength{\unitlength}{0.25cm}
+% \begin{picture}(21,29.7)
+% \thicklines
+% \put(0,0){\framebox(21,29.7){\mbox{}}}
+% \thinlines
+% \put(18.4,25.6){\framebox(2,1.5){\mbox{}}}
+% \put(7.5,23){\makebox(0,0)[c]{\tiny Your Name}}
+% \put(7.5,20){\makebox(0,0)[c]{\scriptsize The Title}}
+% \put(7.5,16.5){\makebox(0,0)[b]{\tiny Date}}
+% \put(13,15.4){\framebox(7.4,9.1){\mbox{}}}
+% \put(16.7,21){\makebox(0,0)[b]{\tiny\ttfamily additional}}
+% \put(16.7,20){\makebox(0,0)[b]{\tiny\ttfamily optional}}
+% \put(16.7,19){\makebox(0,0)[b]{\tiny\ttfamily logo}}
+% \put(19.4,26){\makebox(0,0)[b]{\tiny\ttfamily logo}}
+% \put(2.9,9.5){\makebox(0,0)[lb]{\tiny Address}}
+% \put(2.9,9){\makebox(0,0)[lb]{\tiny of Chair}}
+% \put(2.9,7.5){\makebox(0,0)[lb]{\tiny Supervisors}}
+% \put(16.4,7){\framebox(4,3){\mbox{}}}
+% \put(18.4,8){\makebox(0,0)[b]{\tiny\ttfamily chair logo}}
+% \end{picture}
+% ^^A
+% \caption{The title page as generated by \package{\filename} with
+% option \Lopt{nodecor}. To compare with the repeated
+% decoration please refer to figure \ref{fig:fbititle} on page
+% \pageref{fig:fbititle}}
+% ^^A
+% \label{fig:nodecor}
+% \end{figure}
+% \NEWfeature{2005/12/22 v1.2d}The options
+% \describeoption{decor}\Lopt{decor} and
+% \describeoption{nodecor}\Lopt{nodecor} control the decoration on
+% the title page. As already said in section \ref{sec:intro} it is
+% possible to repeat the decoration of the cardboard on the
+% title page. To do this, all you have to do is:
+%\begin{verbatim}
+% \documentclass[decor]{fbithesis}
+%\end{verbatim}
+% (which is the default behaviour). If you don't want the
+% decoration (as shown in figure \ref{fig:nodecor}) you can use
+%\begin{verbatim}
+% \doucmentclass[nodecor]{fbithesis}
+%\end{verbatim}
+%
+% \subsubsection{\Lopt{declaration}/\Lopt{nodeclaration}}
+% \label{subsubsec:declaration}
+%
+% If you do a diploma thesis you'll have to give a declaration that
+% you have written everything by yourself. By the
+% \NEWfeature{2006/01/18 v1.2e} options
+% \describeoption{declaration}\Lopt{declaration} and
+% \describeoption{nodeclaration}\Lopt{nodeclaration} you are able
+% to include this declaration into your thesis:
+%\begin{verbatim}
+% \documentclass[declaration]{fbithesis}
+%\end{verbatim}
+% This inserts a new page with a form of the declaration. Since the
+% text is taken from the Diplompr{\"{u}}fungsordnung it should be
+% sufficient for the deans office. You only have to sign it.
+%
+% As you might have guessed
+%\begin{verbatim}
+% \documentclass[nodeclaration]{fbithesis}
+%\end{verbatim}
+% will suppress the declaration. This is the default behaviour.
+%
+% \subsubsection{Paper options}
+% \label{subsubsec:paper}
+%
+% \NEWfeature{2003/10/08 v1.1n}The position of the various elements
+% on the title page is implemented in the class option
+% \Lopt{a4paper}. There is no need for a alternative \Lopt{letter}
+% because the cardboard is only offered in the paper format
+% \mbox{DIN-A4} (and \mbox{DIN-A5} but that is a topic for further
+% development. See section \ref{subsec:todo} on page
+% \pageref{subsec:todo}). Since there is no other paper format
+% implemented at the time, the option \Lopt{a4paper} is the default
+% behaviour.
+%
+% \subsubsection{Options of the \emph{baseclass}}
+% \label{subsubsec:baseoptions}
+%
+% Furthermore you may choose every option provided by the
+% \emph{baseclass} (see subsection \ref{subsec:load} on page
+% \pageref{subsec:load}), since all
+% other options are forwarded to it. For example with the default
+% \emph{baseclass} \package{scrbook}\footnote{\package{scrbook} is
+% part of \koma\ by \person{Frank Neukam} and \person{Markus Kohm}}
+% you may want something like this:
+%\begin{verbatim}
+% \documentclass[10pt, a4paper, BCOR12mm, headsepline]{fbithesis}
+%\end{verbatim}
+% For a description of possible options of your chosen
+% \emph{baseclass} look at the corresponding documentation. The
+% \package{scrbook}-options used above for example are described in
+% \cite{neukam:scrclass, kohm:komabuch}.
+%
+% \begin{documentation}{Commands}
+% \changes{v0.3b}{2002/03/31}{enhanced}
+% \changes{v0.5j}{2002/09/21}{enhanced (title-enhance stuff)}
+% \changes{v0.6d}{2002/10/19}{enhanced (\cmd{\date}- and
+% \cmd{\thesislogo}-stuff)}
+% \changes{v0.7e}{2002/11/26}{\koma-stuff}
+% \changes{v0.7g}{2002/11/29}{divided in subsubsections, added
+% description of \koma-commands}
+% \changes{v1.1c}{2003/02/07}{\ams-stuff}
+%^^A =================================================================
+%^^A Description of the provided commands
+%^^A =================================================================
+% \subsection{Commands}
+% \label{subsec:commands}
+%
+% \subsubsection{\LaTeX-Commands}
+% \label{subsubsec:latex}
+%
+% As in the standard \LaTeXe\ classes the user defines the title
+% and author by the declarations\footnote{For a more detailed view
+% on these macros please look at \cite{ltx2e:ltsect}.}
+% \describemacro{\title}\cmd{\title}\marg{name} and
+% \describemacro{\author}\cmd{\author}\marg{name}. As in the
+% standard \LaTeXe\ classes multiple authors have to be separated
+% with \cmd{\and}. In general master/phd-theses won't have more
+% than one author, but just in case (and because it will be needed
+% for research reports, see subsection \ref{subsec:todo} on page
+% \pageref{subsec:todo}) the
+% \describemacro{\and}\cmd{\and}~command is also provided.
+%
+% The \cmd{\date}~command differs from the definition in the
+% \LaTeX-Kernel. In the standard \LaTeXe\ classes the command is
+% used to specify the date of the document: \cmd{\date}\marg{date}.
+% In \package{\filename} the macro is enhanced by an optional
+% argument to specify the period of the thesis:
+% \describemacro{\date}\cmd{\date}\oarg{begin date}\marg{end date}.
+% If you leave out the optional argument only the end date is set,
+% if you leave out the whole \cmd{\date}~command,
+% \cmd{\date}\{\cmd{\today}\} is assumed by default.
+%
+% As in the standard classes the title is set by using the
+% \describemacro{\maketitle}\cmd{\maketitle}\footnote{See
+% \cite{lamport:classes} for the original definition}~command.
+% This is redefined in this package to match the cardboard cover
+% page of the Department of Computer Science at the TU Dortmund.
+%
+% If you really want to make acknowledgements on the title page you
+% may use
+% \describemacro{\thanks}\cmd{\thanks}\marg{text}\label{cmd:thanks}.
+% The text would be set as a footnote at the bottom of the
+% cardboard window. In my opinion this does not look well and I
+% recommend not to use \cmd{\thanks}. The correct place for
+% eMail-addresses, acknowledgements, dedications and such things is
+% a preface or---if you use \package{scrbook} or \package{scrreprt}
+% as the \emph{baseclass}---the enhanced title of \koma\ (see
+% subsection \ref{subsubsec:koma} and \cite{neukam:scrclass,
+% kohm:komabuch})
+%
+% The \describemacro{\title}\cmd{\title} and
+% \describemacro{\author}\cmd{\author} commands are mandatory: You
+% have to define them if you want \package{\filename} to do its
+% job. All other commands are optional. So the only thing you
+% have to do to use this package is to choose your favorite
+% \emph{baseclass} (see subsection \ref{subsec:load} on page
+% \pageref{subsec:load}), load
+% \package{\filename} and provide the information you would like to
+% have on the title page.
+%
+% \subsubsection{\package{\filename}-Commands}
+% \label{subsubsec:fbithesis}
+%
+% The commands above are all provided by the standard \LaTeX\
+% classes. In \package{\filename} there are a few more commands to
+% provide additional information.
+%
+% By the command \describemacro{\subject}\cmd{\subject}\marg{sub}
+% you may provide the `type' of the thesis (like `Diplomarbeit', or
+% `Dissertation'). As the \LaTeX-commands above (see subsection
+% \ref{subsubsec:latex}) \cmd{\subject}, too, affects the look
+% in the window of the cardboard. The content of the following
+% commands is placed in other areas of the title page and isn't
+% visible through the window.
+%
+% By using the command
+% \describemacro{\unidologo}\cmd{\unidologo}\marg{filename} you may
+% include the logo of the TU Dortmund to the title page.
+% `\meta{filename}' should be a graphics file (e.g.\ \mbox{EPS} or
+% \mbox{PDF}). Additionally it is possible to add the logo of the
+% chair to the title page. This is done by
+% \describemacro{\chairlogo}\cmd{\chairlogo}\marg{filename}.
+%
+% If you have a thesis-specific logo, it can be placed on the
+% title page by using
+% \describemacro{\thesislogo}\cmd{\thesislogo}\marg{filename}. The
+% logo is set next to the window of the cardboard (see figure
+% \ref{fig:fbititle} on page \pageref{fig:fbititle}).
+%
+% Some folks want the names of the chair, the department and the
+% university to appear on the title page. This can be done by
+% \describemacro{\chair}\cmd{\chair}\marg{information}. The
+% argument \meta{information} may consist of lines separated by
+% `|\\|'.
+%
+% The supervisors of the thesis may be provided by
+% \describemacro{\supervisors}\cmd{\supervisors}\marg{first
+% supervisor}\marg{second supervisor}.
+%
+% \emph{Please note:} Due to aesthetic reasons it is recommended
+% to use \cmd{\chair}, \cmd{\chairlogo} and \cmd{\supervisors} only
+% in combination: either all or none.
+%
+% \subsubsection{\koma-Commands}
+% \label{subsubsec:koma}
+%
+% \package{\filename} supports parts of the enhanced title of
+% \describefile{\koma}\koma. So if you use \package{scrbook} or
+% \package{scrreprt} you may use the following \koma-commands. For
+% more information on these three macros see \cite[section
+% 3.3]{kohm:komabuch}.
+%
+% If you print your document two sided, the back of the title page
+% normally is left empty. You can use the commands
+% \describemacro{\uppertitleback}\cmd{\uppertitleback}\marg{text}
+% and
+% \describemacro{\lowertitleback}\cmd{\lowertitleback}\marg{text}
+% to place additional information there.
+%
+% \koma\ provides a special dedication page. If you want to
+% dedicate your thesis to someone, use
+% \describemacro{\dedication}\cmd{\dedication}\marg{text}.
+%
+% There are some more \koma-commands affecting the title. Theses
+% are ignored by \package{\filename} since they are useless in our
+% case: \cmd{\extratitle} is not necessary since the cardboard
+% cover serves exactly the purpose of the cover page
+% \cmd{\extratitle} would produce. \cmd{\titlehead} would mess up
+% the layout of the title page and \cmd{\publishers} is nonsense
+% since no thesis has got a publisher.
+%
+% \subsubsection{\ams-Commands}
+% \label{subsubsec:ams}
+%
+% \NEWfeature{2003/02/07 v1.1c}\package{\filename} also
+% supports \package{amsbook} as baseclass. However the
+% \describefile{\ams}\ams-classes use a different macro for the
+% dedication than \koma. So if you choose \package{amsbook} as
+% baseclass you may use the command
+% \describemacro{\dedicatory}\cmd{\dedicatory}\marg{text}. For
+% more information on this macro see \cite[chapter
+% 3]{ams:instr}.
+%
+% There are some more \ams-commands affecting the title. Theses
+% are ignored by \package{\filename} since they are useless in our
+% case: \cmd{\subjclass}, \cmd{\keywords} and \cmd{\translators}
+% are nonsense since no thesis is specified by the
+% \ams-classification or is translated. The other \ams-commands
+% (like \cmd{\address}, \cmd{\curraddr}, \cmd{\urladdr},
+% \cmd{\email}) are used to provide additional information to
+% contact the author(s). It is unusual to provide this information
+% on the title page of a thesis. You may include it into your
+% preface however.
+% \end{documentation}
+%
+% \begin{documentation}{Customization}
+% \changes{v0.4b}{2002/04/05}{\file{fbithesis.cfg}}
+% \changes{v0.5k}{2002/09/22}{manually}
+% \changes{v0.8e}{2003/01/01}{invariant positioning}
+% \changes{v0.8f}{2003/01/03}{inverted sense of direction}
+%^^A =================================================================
+%^^A How to customize fbithesis
+%^^A =================================================================
+% \section{Customization}
+% \label{sec:custom}
+%
+% The horizontal and vertical placement of the writable area on
+% the paper depends on many factors like page size and layout,
+% printer margins or corrections done by the device driver. Some
+% of these (like page layout) can be directly controlled by \TeX,
+% others (like page size) can be taken into account. Unfortunately
+% there may still be some factors that cannot be influenced by this
+% package, so a correct adjustment cannot be done completely
+% automatically. A correct adjustment on the other hand is very
+% important to center the title in the window in the cardboard
+% cover.
+%
+% \package{\filename} provides a ``pretty good guess'' concerning
+% the placement of the title page, however a correct adjustment
+% cannot be guaranteed. In fact the ``guess'' is much better than
+% only ``pretty good'': in the case of a mismatch you are strongly
+% recommended to check the positioning of your printer. Please run
+% `\file{latex testpage.tex}', print a copy, check the result and
+% correct the positioning. However if this does not help please
+% send a bug report to the author\footnote{mail to \mail[Andre
+% Dierker]{dierker@kand.de}}. For the meantime
+% \package{\filename} provides a stopgap solution. Positive values
+% for \describemacro{\titlevadjust}\cmd{\titlevadjust}\marg{length}
+% move the page up, negative values down. Similar with
+% \describemacro{\titlehadjust}\cmd{\titlehadjust}\marg{length}:
+% positive values move the page to the left, negative to the right.
+% \end{documentation}
+%
+% \begin{documentation}{Configuration}
+% \changes{v0.5b}{2002/08/15}{new}
+% \changes{v0.5j}{2002/09/21}{added code for config file}
+% \changes{v1.2m}{2011/02/06}{renaming of unidologo}
+%^^A =================================================================
+%^^A Example for a site-wide fbithesis.cfg-file
+%^^A =================================================================
+% \subsection{Configuration file}
+% \label{subsec:config}
+%
+% You may use a site-wide configuration file
+% \describefile{\filename.cfg}\file{\filename.cfg} to set some
+% defaults. This configuration file---placed somewhere \LaTeX\ is
+% able to find it---will be read whenever the
+% \package{\filename}~class is used. Of course you may overwrite
+% these local defaults by placing concurrent definitions in your
+% source file.
+%
+% To generate the following sample configuration file, run
+% \file{\filename.ins} through \LaTeX. On a \tds\ compliant \LaTeX\
+% installation the configuration files are normally collected in
+% `\file{\$(TEXMF)/doc/tex/latex/config/}'. However because there
+% may already be an older configuration file `\file{\filename.cfg}'
+% you have to move (and merge) it yourself.
+%
+% \begin{macrocode}
+%<*config>
+% \end{macrocode}
+
+% If the graphics-files containing the logos are installed
+% centrally, it may be useful to define the commands
+% \describemacro{\unidologo}\cmd{\unidologo} and
+% \describemacro{\chairlogo}\cmd{\chairlogo} site-wide.
+% (Conforming to \cite{carlisle:graphics} you may want to skip
+% the extensions of the filenames.)
+% \iffalse
+%% If the EPS-files containing the logos are installed centrally,
+%% it may be useful to define the following commands site-wide.
+%% You may safely skip the extensions of the filenames.
+% \fi
+% \begin{macrocode}
+ % \unidologo{tulogo}
+ % \chairlogo{ls9logo}
+% \end{macrocode}
+
+% The same with \describemacro{\chair}\cmd{\chair}:
+% \iffalse
+%% The same with `\chair':
+% \fi
+% \begin{macrocode}
+ % \chair{Chair IX (Virtual Research)\\
+ % Department of Computer Science\\
+ % TU Dortmund}
+% \end{macrocode}
+
+% \begin{macrocode}
+%</config>
+% \end{macrocode}
+% \end{documentation}
+%
+% \begin{documentation}{Example}
+% \changes{v0.3d}{2002/04/03}{class changes}
+% \changes{v0.3e}{2002/04/04}{simplified}
+% \changes{v0.5a}{2002/08/14}{added \cmd{\thesisstyle},
+% \cmd{\unidologo} and \cmd{\chairlogo} (title-enhance stuff)}
+% \changes{v0.5b}{2002/08/15}{added \cmd{\chair} and
+% \cmd{\supervisors} (title-enhance stuff)}
+% \changes{v0.5d}{2002/08/29}{minor changes}
+% \changes{v0.5j}{2002/09/21}{added docu}
+% \changes{v0.6b}{2002/09/25}{Logos}
+% \changes{v0.6d}{2002/10/19}{\cmd{\thesislogo}- and
+% \cmd{\date}-stuff}
+% \changes{v0.7h}{2002/12/12}{Logos with DSC-comments}
+% \changes{v0.8e}{2003/01/01}{rely on automatic positioning}
+% \changes{v1.2e}{2006/01/03}{PDF-Versions of the logos}
+% \changes{v1.2j}{2006/10/17}{Commented example}
+% \changes{v1.2j}{2006/10/20}{more comments}
+% \changes{v1.2m}{2011/02/06}{renaming of uni and fbi}
+%^^A =================================================================
+%^^A The glorious example! (well, sort of...)
+%^^A =================================================================
+% \section{Example}
+% \label{sec:example}
+%
+% Here is a little \describefile{example.tex}example file. To
+% generate it, run \file{\filename.ins} through \LaTeX. First we
+% use the \env{filecontents*}~environment to provide the
+% \mbox{PostScript}-Code of three dummy logos used by the example.
+% The original logos should be available at your chair, contact
+% your supervisor or system administrator.
+%
+% \begin{macrocode}
+%<*example>
+% \end{macrocode}
+% At first we include an auxiliary file that contains the logos. You
+% can ignore this line since it is only necessary in this example.
+% \iffalse
+% \begin{macrocode}
+ %
+ %
+ %
+ % At first we include an auxiliary file that contains the logos. You
+ % may ignore this line. It is only necessary for this example.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+\include{exampleaux}
+% \end{macrocode}
+% fbithesis supports three classes as `baseclass'. To use `book' or
+% `amsbook' you have to use one of the following lines. To use
+% `scrbook' from KOMA-Script as baseclass you have to do nothing
+% since this is the default. If you don't know what I'm talking
+% about just leave these lines as they are. Almost everyone uses
+% `scrbook' as baseclass. It is a wise decision.
+% \iffalse
+% \begin{macrocode}
+ %
+ % fbithesis supports three classes as `baseclass'. To use `book' or
+ % `amsbook' you have to use one of the following lines. To use
+ % `scrbook' from KOMA-Script as baseclass you have to do nothing since
+ % this is the default. If you don't know what I'm talking about just
+ % leave these lines as they are. Almost everyone uses `scrbook' as
+ % baseclass. It is a wise decision.
+ %
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ % \def\baseclass{book}
+ % \def\baseclass{amsbook}
+% \end{macrocode}
+%
+% Of course we choose \package{\filename} as document class.
+% Additionally we want to look at the
+% \describeoption{draft}\Lopt{draft}~mode and test the option
+% forwarding of \describeoption{a4paper}\Lopt{a4paper} to the
+% \emph{baseclass}. Since the example is in English, we also
+% choose \describeoption{english}\Lopt{english}.
+% \changes{v0.4c}{2002/04/06}{Example: set option \Lopt{draft}}
+% \changes{v0.8f}{2003/01/03}{Example: set option \Lopt{english}}
+% \iffalse
+% \begin{macrocode}
+ %
+ % Of course we choose fbithesis as document class. Additionally we
+ % want to look at the draft mode and test the option forwarding of
+ % a4paper to the baseclass. Since the example is in English, we also
+ % choose english.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+\documentclass[a4paper, english]{fbithesis}
+% \end{macrocode}
+%
+% We begin our document:
+% \begin{macrocode}
+\begin{document}
+ \frontmatter
+% \end{macrocode}
+%
+% As in the standard \LaTeX\ classes we use the
+% \describemacro{\title}\cmd{\title}~command. Normally one can
+% trust \TeX's ability to compute a satisfactory line breaking.
+% However \TeX's algorithm is not optimized for titles but for
+% continuous text. To make it more difficult the cardboard window
+% is quite small. So if you prefer a different make up, help
+% yourself with an appropriate placed `|\\|', as you can see in
+% this example.
+% \iffalse
+% \begin{macrocode}
+ %
+ % As in the standard LaTeX classes we use the title command. Normally
+ % one can trust TeX's ability to compute a satisfactory line breaking.
+ % However TeX's algorithm is not optimized for titles but for
+ % continuous text. To make it more difficult the cardboard window is
+ % quite small. So if you prefer a different make up, help yourself
+ % with an appropriate placed `\\', as you can see in this example.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \title{Example file for the\\ \texttt{fbithesis} package%
+% \end{macrocode}
+%
+% The \describemacro{\thanks}\cmd{\thanks}~command is used to provide
+% further information\footnote{You can safely ignore the
+% \cmd{\fileversion} and \cmd{\filedate}~commands. They are only
+% helping me creating a consistent distribution of this
+% package.}. As you can see the result of the
+% \cmd{\thanks}~mechanism does not look well. Therefore I do not
+% recommend the usage. It is better to write a preface instead.
+% \iffalse
+% \begin{macrocode}
+ %
+ % The `\thanks' command may be used to provide further
+ % information. But as you can see the result of the `\thanks'
+ % mechanism does not look well. Therefore I do not recommend the
+ % usage. It is better to write a preface instead.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \thanks{The \texttt{fbithesis}~package has version number
+ \fileversion. It was last revised on \filedate.}%
+ }
+% \end{macrocode}
+%
+% The usage of the \describemacro{\author}\cmd{\author}~command: In
+% general master/phd-theses will have only one author, but just in
+% case the \describemacro{\and}\cmd{\and}-command is also provided.
+% \iffalse
+% \begin{macrocode}
+ %
+ % The usage of the \author command: In general master/phd-theses will
+ % have only one author, but just in case the \and-command is also
+ % provided.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \author{Andre Dierker%
+% \end{macrocode}
+% The use of the command \cmd{\thanks} is not recommended (see page
+% \pageref{cmd:thanks}).
+% \iffalse
+% \begin{macrocode}
+ %
+ % Again the use of the command `\thanks' is possible but not
+ % recommmended. Please refer to the documentation.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ % \thanks{\texttt{software@kand.de}}%
+% \end{macrocode}
+% Perhaps there ist a second author:
+% \begin{macrocode}
+ \and Nobody Else%
+% \end{macrocode}
+% Again the use of \cmd{thanks} is not recommended.
+% \begin{macrocode}
+ % \thanks{\texttt{no@body.el.se}}%
+ }
+% \end{macrocode}
+% Normally the \describemacro{\subject}subject would be something
+% like `Diplomarbeit' or `Dissertation'\ldots
+% \iffalse
+% \begin{macrocode}
+ %
+ % Normally the subject would be something like `Diplomarbeit' or
+ % `Dissertation' ...
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \subject{Example}
+% \end{macrocode}
+% You may give the \describemacro{\date}beginning and the deadline
+% of your thesis here.
+% \iffalse
+% \begin{macrocode}
+ %
+ % You may give the beginning and the deadline of your thesis here.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \date[Created April 3, 2002]{Printed \today}
+% \end{macrocode}
+% Providing the \describemacro{\supervisors}supervisors of the
+% thesis.
+% \iffalse
+% \begin{macrocode}
+ %
+ % Providing the supervisors of the thesis.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \supervisors{First Tutor}{Second Tutor}
+% \end{macrocode}
+%
+% If there is a site-wide configuration file (see subsection
+% \ref{subsec:config}) the commands
+% \describemacro{\unidologo}\cmd{\unidologo} and
+% \describemacro{\chairlogo}\cmd{\chairlogo} may already be
+% defined. You may override them locally. Conforming to
+% \cite{carlisle:graphics} we skip the extensions of the
+% filenames. Due to this \TeX\ is able to include the correct
+% version of the file (EPS or PDF)
+% \iffalse
+% \begin{macrocode}
+ %
+ % You may use the following commands if you want to place a logos on
+ % the title page. Conforming to Carlisle: Packages in the `graphics'
+ % bundle we skip the extensions of the filenames. Due to this TeX is
+ % able to include the correct version of the file (EPS or PDF)
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \unidologo{tulogo}
+ \chairlogo{ls9logo}
+% \end{macrocode}
+% You may use the command
+% \describemacro{\thesislogo}\cmd{\thesislogo} if you want to place
+% a thesis-specific logo on the title page.
+% \begin{macrocode}
+ \thesislogo{thesislogo}
+% \end{macrocode}
+% The \describemacro{\chair}\cmd{\chair}~command is the other
+% candidate for a site-wide configuration file. This, too, can be
+% overwritten.
+% \iffalse
+% \begin{macrocode}
+ %
+ % The chair you are writing your thesis at.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \chair{Chair IX (Virtual Research)\\
+ Department of Computer Science\\
+ TU Dortmund}
+% \end{macrocode}
+%
+% The data provided by the above macros is now used to set the
+% title page. This is done with the macro
+% \describemacro{\maketitle}\cmd{\maketitle}
+% \iffalse
+% \begin{macrocode}
+ %
+ % The data provided by the above macros is now used to set the title page.
+ % This is done with the macro \maketitle.
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \maketitle
+% \end{macrocode}
+% So after the title page is set your thesis may begin:
+% \iffalse
+% \begin{macrocode}
+ %
+ % So after the title page is set your thesis may begin:
+% \end{macrocode}
+% \fi
+% \begin{macrocode}
+ \mainmatter
+% \end{macrocode}
+% \ldots\\^^A
+% \ldots\space{\tiny(Sorry, but I won't write your thesis. I've
+% had trouble enough with my own one\ldots\winkey)}\\^^A
+% \ldots
+% \begin{macrocode}
+ Now here comes your text.
+% \end{macrocode}
+%
+% Now our minimal document is ready.
+% \begin{macrocode}
+\end{document}
+%</example>
+% \end{macrocode}
+%
+% Have fun using \package{\filename}.
+%
+%^^A =================================================================
+%^^A Auxiliary file for the example that contains the logos
+%^^A =================================================================
+% \subsection{Logos}
+% \label{subsec:examplelogos}
+%
+% Here is a auxiliary \describefile{exampleaux.tex} file that its
+% used by the example. It contains the logos. We use the
+% \env{filecontents*}~environment to provide the \mbox{PostScript}-
+% and \mbox{PDF}-Code of three dummy logos used by the example.
+% The original logos should be available at your chair, contact
+% your supervisor or system administrator.
+%
+% \begin{macrocode}
+%<*exampleaux>
+\begin{filecontents*}{tulogo.eps}
+% \end{macrocode}
+%\begin{small}\begin{verbatim}
+% (Here comes some EPS-code for a provisional logo of the university.)
+%\end{verbatim}\end{small}
+% \iffalse
+ %!PS-Adobe-3.0 EPSF-3.0
+%%BoundingBox: 0 0 75 68
+%%Creator: Andre Dierker
+%%CreationDate: 2002/09/25
+%%DocumentData: Clean7Bit
+%%For: Example for fbithesis
+%%Title: TU Logo
+%%Version: 1.0 1
+(Times-Roman) findfont 50 scalefont setfont
+0 33 moveto (TU) show
+(Times-Roman) findfont 35 scalefont setfont
+0 8 moveto (Logo) show showpage
+%%EOF
+% \fi
+% \begin{macrocode}
+\end{filecontents*}
+\begin{filecontents*}{tulogo.pdf}
+% \end{macrocode}
+%\begin{small}\begin{verbatim}
+% (Here comes some PDF-code for the university logo above.)
+%\end{verbatim}\end{small}
+% \iffalse
+ %PDF-1.3
+7 0 obj
+<</Length 8 0 R>>
+stream
+0.1 0 0 0.1 0 0 cm
+q
+q 10 0 0 10 0 0 cm BT
+/R5 50 Tf
+1 0 0 1 0 33 Tm
+(Uni)Tj
+/R5 35 Tf
+0 -25 Td
+(Logo)Tj
+ET Q
+Q
+endstream
+endobj
+8 0 obj
+112
+endobj
+9 0 obj
+<</R5
+5 0 R>>
+endobj
+6 0 obj
+<</Type/Page/MediaBox [0 0 75 68]
+/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 9 0 R
+>>
+/Contents 7 0 R
+>>
+endobj
+3 0 obj
+<< /Type /Pages /Kids [
+6 0 R
+] /Count 1
+>>
+endobj
+1 0 obj
+<</Type /Catalog /Pages 3 0 R
+>>
+endobj
+5 0 obj
+<</Subtype/Type1/BaseFont/Times-Roman/Type/Font/Name/R5>>
+endobj
+4 0 obj
+<</Type/FontDescriptor/FontName/Times-Roman>>
+endobj
+2 0 obj
+<</Producer (Aladdin Ghostscript 6.01)
+>>endobj
+xref
+0 10
+0000000000 65535 f
+0000000414 00000 n
+0000000596 00000 n
+0000000355 00000 n
+0000000535 00000 n
+0000000462 00000 n
+0000000225 00000 n
+0000000015 00000 n
+0000000177 00000 n
+0000000196 00000 n
+trailer
+<< /Size 10 /Root 1 0 R /Info 2 0 R
+>>
+startxref
+652
+%%EOF
+% \fi
+% \begin{macrocode}
+\end{filecontents*}
+% \end{macrocode}
+% \begin{macrocode}
+\begin{filecontents*}{ls9logo.eps}
+% \end{macrocode}
+%\begin{small}\begin{verbatim}
+% (Some more EPS-code for an exemplary logo of a hypothetical chair.)
+%\end{verbatim}\end{small}
+% \iffalse
+ %!PS-Adobe-3.0 EPSF-3.0
+%%BoundingBox: 0 0 107 70
+%%Creator: Andre Dierker
+%%CreationDate: 2002/09/25
+%%DocumentData: Clean7Bit
+%%For: Example for fbithesis
+%%Title: LS9 Logo
+%%Version: 1.0 1
+(Times-Roman) findfont 100 scalefont setfont
+0 2 moveto (L9) show
+(Times-Roman) findfont 65 scalefont setfont
+28 23 moveto (S) show showpage
+%%EOF
+% \fi
+% \begin{macrocode}
+\end{filecontents*}
+\begin{filecontents*}{ls9logo.pdf}
+% \end{macrocode}
+%\begin{small}\begin{verbatim}
+% (Here comes some PDF-code for the
+% corresponding PDF-Version of the chair logo above.)
+%\end{verbatim}\end{small}
+% \iffalse
+ %PDF-1.3
+7 0 obj
+<</Length 8 0 R>>
+stream
+0.1 0 0 0.1 0 0 cm
+q
+q 10 0 0 10 0 0 cm BT
+/R5 100 Tf
+1 0 0 1 0 2 Tm
+(L9)Tj
+/R5 65 Tf
+28 21 Td
+(S)Tj
+ET Q
+Q
+endstream
+endobj
+8 0 obj
+108
+endobj
+9 0 obj
+<</R5
+5 0 R>>
+endobj
+6 0 obj
+<</Type/Page/MediaBox [0 0 107 70]
+/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 9 0 R
+>>
+/Contents 7 0 R
+>>
+endobj
+3 0 obj
+<< /Type /Pages /Kids [
+6 0 R
+] /Count 1
+>>
+endobj
+1 0 obj
+<</Type /Catalog /Pages 3 0 R
+>>
+endobj
+5 0 obj
+<</Subtype/Type1/BaseFont/Times-Roman/Type/Font/Name/R5>>
+endobj
+4 0 obj
+<</Type/FontDescriptor/FontName/Times-Roman>>
+endobj
+2 0 obj
+<</Producer (Aladdin Ghostscript 6.01)
+>>endobj
+xref
+0 10
+0000000000 65535 f
+0000000411 00000 n
+0000000593 00000 n
+0000000352 00000 n
+0000000532 00000 n
+0000000459 00000 n
+0000000221 00000 n
+0000000015 00000 n
+0000000173 00000 n
+0000000192 00000 n
+trailer
+<< /Size 10 /Root 1 0 R /Info 2 0 R
+>>
+startxref
+649
+%%EOF
+% \fi
+% \begin{macrocode}
+\end{filecontents*}
+% \end{macrocode}
+% \begin{macrocode}
+\begin{filecontents*}{thesislogo.eps}
+% \end{macrocode}
+%\begin{small}\begin{verbatim}
+% (Even more EPS-code for a dummy thesis-specific logo.)
+%\end{verbatim}\end{small}
+% \iffalse
+ %!PS-Adobe-3.0 EPSF-3.0
+%%BoundingBox: 0 0 90 68
+%%Creator: Andre Dierker
+%%CreationDate: 2002/10/19
+%%DocumentData: Clean7Bit
+%%For: Example for fbithesis
+%%Title: Thesis Logo
+%%Version: 1.0 1
+(Times-Roman) findfont 58 scalefont setfont
+0 28 moveto (FBI) show
+(Times-Roman) findfont 35 scalefont setfont
+0 1 moveto (Thesis) show showpage
+%%EOF
+% \fi
+% \begin{macrocode}
+\end{filecontents*}
+\begin{filecontents*}{thesislogo.pdf}
+% \end{macrocode}
+%\begin{small}\begin{verbatim}
+% (Here comes the PDF-code of the thesis-specific logo above.)
+%\end{verbatim}\end{small}
+% \iffalse
+ %PDF-1.3
+7 0 obj
+<</Length 8 0 R>>
+stream
+0.1 0 0 0.1 0 0 cm
+q
+q 10 0 0 10 0 0 cm BT
+/R5 58 Tf
+1 0 0 1 0 28 Tm
+(FBI)Tj
+/R5 35 Tf
+0 -27 Td
+(Thesis)Tj
+ET Q
+Q
+endstream
+endobj
+8 0 obj
+114
+endobj
+9 0 obj
+<</R5
+5 0 R>>
+endobj
+6 0 obj
+<</Type/Page/MediaBox [0 0 90 68]
+/Parent 3 0 R
+/Resources<</ProcSet[/PDF /Text]
+/Font 9 0 R
+>>
+/Contents 7 0 R
+>>
+endobj
+3 0 obj
+<< /Type /Pages /Kids [
+6 0 R
+] /Count 1
+>>
+endobj
+1 0 obj
+<</Type /Catalog /Pages 3 0 R
+>>
+endobj
+5 0 obj
+<</Subtype/Type1/BaseFont/Times-Roman/Type/Font/Name/R5>>
+endobj
+4 0 obj
+<</Type/FontDescriptor/FontName/Times-Roman>>
+endobj
+2 0 obj
+<</Producer (Aladdin Ghostscript 6.01)
+>>endobj
+xref
+0 10
+0000000000 65535 f
+0000000416 00000 n
+0000000598 00000 n
+0000000357 00000 n
+0000000537 00000 n
+0000000464 00000 n
+0000000227 00000 n
+0000000015 00000 n
+0000000179 00000 n
+0000000198 00000 n
+trailer
+<< /Size 10 /Root 1 0 R /Info 2 0 R
+>>
+startxref
+654
+%%EOF
+% \fi
+% \begin{macrocode}
+\end{filecontents*}
+%</exampleaux>
+% \end{macrocode}
+% \end{documentation}
+%
+% \begin{documentation}{Small print}
+% \changes{v0.4b}{2002/04/05}{new}
+% \changes{v0.8a}{2002/12/16}{changed (LPPL removal)}
+% \changes{v1.2h}{2006/08/30}{suppress page break}
+%^^A =================================================================
+%^^A We insert the `small print' here.
+%^^A =================================================================
+% \vfill
+% \noindent\begin{minipage}{\textwidth}
+% \setlength{\parindent}{10pt}
+% \mbox{}\hfill
+% \scriptsize\package{\filename} is Copyright
+% \copyright\ 2002-2011 by Andre Dierker
+% \vspace{2em}
+%
+% There is no warranty for the \package{\filename}~package. I
+% provide \package{\filename} `as is', without warranty of any
+% kind, either expressed or implied, including, but not limited to,
+% the implied warranties of merchantability and fitness for a
+% particular purpose. The entire risk as to the quality and
+% performance of \package{\filename} is with you. Should
+% \package{\filename} prove defective, you assume the cost of all
+% necessary servicing, repair, or correction.
+%
+% The \package{\filename}~package may be distributed and/or
+% modified under the conditions of the \LaTeX\ Project Public
+% License (see \cite{latex3-project:lppl}), either version 1.3
+% of this license or (at your option) any later version.
+%
+% The latest version of this license is in
+% \url{http://www.latex-project.org/lppl.txt} and version 1.3 or
+% later is part of all distributions of \LaTeX\ version 2005/12/01
+% or later.
+%
+% The \package{\filename}~package has the LPPL maintenance status
+% ``author-maintained''.
+%
+% The Current Maintainer of this package is Andre Dierker.
+%
+% The \package{\filename}~package consists of all files
+% listed in \file{README}
+% \end{minipage}
+% \par\newpage
+% \end{documentation}
+%
+%^^A =================================================================
+%^^A The `user' documentation ends here, or strictly speaking: it
+%^^A ends after the following stuff (the argument of
+%^^A \StopEventually). In case of the `user' docu it will be
+%^^A appended here, in case of the `programmer' docu it will be
+%^^A delayed and inserted below at \Finale
+%^^A =================================================================
+% \StopEventually{
+%
+% \begin{documentation}{References}
+% \changes{v0.4a}{2002/04/04}{new}
+% \changes{v0.5j}{2002/09/21}{added more}
+% \changes{v0.6d}{2002/10/19}{added \file{ltclass}}
+% \changes{v0.7e}{2002/11/26}{added \package{tracking.sty} and \TeX
+% book}
+% \changes{v0.7i}{2002/12/14}{updated}
+% \changes{v0.8f}{2003/01/03}{updated}
+% \changes{v1.1b}{2003/01/30}{updated}
+% \changes{v1.1c}{2003/02/07}{added \ams-stuff}
+% \changes{v1.1f}{2003/03/20}{added \package{graphics}}
+% \changes{v1.2d}{2005/12/14}{updated}
+%^^A =================================================================
+%^^A We can't get enough! Of course we also want a
+%^^A bibliography ;-)
+%^^A =================================================================
+% \addcontentsline{toc}{section}{References}
+%
+% \begin{thebibliography}{10}
+%
+% \bibitem{ams:amsclass} {American Mathematical Society}. \newblock The
+% {amsart}, {amsproc}, and {amsbook} document classes. \newblock
+% \ctanurl{macros/\B latex/\B required/\B amslatex/\B classes/\B
+% amsclass.dtx}, August 2004.
+%
+% \bibitem{ams:instr} {American Mathematical Society} and Michael
+% Downes. \newblock {\ams}-{\LaTeX}: Instructions for preparation of
+% paper and monographs. \newblock \ctanurl{macros/\B latex/\B
+% required/\B amslatex/\B classes/\B instr-l.tex}, December 1999.
+%
+% \bibitem{ltx2e:ltsect} Johannes Braams, David~P. Carlisle, Alan
+% Jeffrey, Leslie Lamport, Frank Mittelbach, Chris Rowley, Tobias
+% Oetiker, and Rainer Sch\"{o}pf. \newblock ltsect.dtx. \newblock
+% \ctanurl{macros/\B latex/\B base/\B ltsect.dtx}, December 1996.
+%
+% \bibitem{ltx2e:ltfloat} Johannes Braams, David~P. Carlisle, Alan
+% Jeffrey, Leslie Lamport, Frank Mittelbach, Chris Rowley, and Rainer
+% Sch\"{o}pf. \newblock ltfloat.dtx. \newblock \ctanurl{macros/\B
+% latex/\B base/\B ltfloat.dtx}, October 2002.
+%
+% \bibitem{carlisle:graphics} David~P. Carlisle. \newblock Packages in
+% the `graphics' bundle. \newblock \ctanurl{macros/\B latex/\B
+% required/\B graphics/\B grfguide.tex}, January 1999.
+%
+% \bibitem{ltx2e:ltboxes} David~P. Carlisle, Leslie Lamport, Frank
+% Mittelbach, and Chris Rowley. \newblock ltboxes.dtx. \newblock
+% \ctanurl{macros/\B latex/\B base/\B ltboxes.dtx}, April 1999.
+%
+% \bibitem{ltx2e:graphics} David~P. Carlisle and Sebastian P.~Q. Rahtz.
+% \newblock The graphics package. \newblock \ctanurl{macros/\B
+% latex/\B required/\B graphics/\B graphics.dtx}, July 2001.
+%
+% \bibitem{glazkov:tracking} D.~A. Glazkov. \newblock tracking.sty.
+% \newblock \ctanurl{macros/\B latex/\B contrib/\B supported/\B
+% tracking/\B tracking.sty}, March 1996.
+%
+% \bibitem{knuth:1986:texbook} Donald~Erwin Knuth. \newblock {\em The
+% {\TeX}book}. \newblock Computers \&
+% typesetting. Ad{\-d}i{\-s}on-Wes{\-l}ey, Reading, MA, USA, 1986.
+%
+% \bibitem{kohm:komabuch} Markus Kohm and Jens-Uwe Morawski. \newblock
+% {\em {\koma}: Eine Sammlung von Klassen und Paketen f\"{u}r
+% {\LaTeX}}. \newblock Edition dante. Lehmanns Fachbuchhandlung,
+% 2., \"{u}berarbeitete und erweitere auflage edition, January 2006.
+%
+% \bibitem{lamport:classes} Leslie Lamport, Frank Mittelbach, and
+% Johannes Braams. \newblock Standard document classes for {\LaTeX}
+% version 2e. \newblock \ctanurl{macros/\B latex/\B base/\B
+% classes.dtx}, February 2004.
+%
+% \bibitem{mittelbach:docstrip} Frank Mittelbach, Denys Duchier,
+% Johannes Braams, Marcin Woli{\'{n}}ski, and Mark Wooding. \newblock
+% The {DocStrip} program. \newblock \ctanurl{macros/\B latex/\B
+% base/\B docstrip.dtx}, March 1999.
+%
+% \bibitem{ltx2e:ltclass} Frank Mittelbach, Chris Rowley, Alan Jeffrey,
+% and David~P. Carlisle. \newblock The main structure of documents.
+% \newblock \ctanurl{macros/\B latex/\B base/\B ltclass.dtx}, August
+% 2001.
+%
+% \bibitem{neukam:scrclass} Frank Neukam and Markus Kohm. \newblock Die
+% {Haupt}-classes und -packages des {\koma} {P}akets. \newblock
+% \ctan: \url{macros/\B latex/\B contrib/\B supported/\B
+% koma-script/\B scrclass.dtx}, August 2005.
+%
+% \bibitem{twgtds:tds} {TUG} Working~Group on~a {\TeX} Directory
+% Structure ({TWG}-{\tds}). \newblock A directory structure for
+% {\TeX} files. \newblock \ctanurl{tds/\B tds.pdf}, April 1999.
+%
+% \bibitem{latex3-project:lppl} The~{\LaTeX3} Project. \newblock The
+% {\LaTeX} {P}roject {P}ublic {L}icense. \newblock URL: \url{http:/\B
+% /\B www.latex-project.org/\B lppl.txt}, October 2004.
+%
+% \end{thebibliography}
+%
+% %\bibliography{fbithesis}
+% %\bibliographystyle{plain}
+% \end{documentation}
+%
+%^^A =================================================================
+%^^A By default we'll build the `user' docu, that is: without an
+%^^A index. But if the user made an index we should include it.
+%^^A =================================================================
+% \PrintIndex
+%
+%^^A =================================================================
+%^^A Same as with the index above: if the user has specified
+%^^A `RecordChanges' in her `ltxdoc.cfg', we should print the
+%^^A changes here.
+%^^A =================================================================
+% \sloppy\PrintChanges
+%
+%^^A =================================================================
+%^^A Make sure that the index and the changes are not printed twice
+%^^A since ltxdoc.cfg might have a second \PrintIndex or
+%^^A \PrintChanges command. (See everysel.dtx by Martin Schr\"oder)
+%^^A =================================================================
+% \let\PrintChanges=\relax
+% \let\PrintIndex=\relax
+%
+%^^A =================================================================
+%^^A End the multicols-environment in the table of contents
+%^^A =================================================================
+% \ifmulticols
+% \addtocontents{toc}{\protect\end{multicols}}
+% \fi
+%
+% } ^^A end of \StopEventually
+%
+% \changes{v0.7d}{2002/11/25}{Implementation: `@'-disclaimer}
+% \changes{v0.8a}{2002/12/16}{Implementation: changed (LPPL
+% removal)}
+% \changes{v1.1i}{2003/06/30}{whole code: changed all
+% \cmd{\fbi@}\meta{command} to \cs{}\meta{command}|@fbi| to avoid
+% clustering}
+% \changes{v1.1k}{2003/07/28}{whole code: changed all
+% \cs{}\meta{command}|@fbi| back to \cs{fbi@}\meta{command}}
+% \changes{v1.1n}{2003/10/08}{whole code: schematized names of
+% internal macros}
+%^^A =================================================================
+%^^A The following will only be included into the `programmer' docu
+%^^A We follow the structure suggested in [Kopka: `LateX', Vol. 3,
+%^^A section 2.5]
+%^^A =================================================================
+% \section{Implementation}
+% \label{sec:implement}
+%
+% \describefile{\filename.cls}\emph{Please note:} The macros
+% containing a `@' are internal commands. They do \emph{not}
+% belong to the user interface and should not be called directly by
+% the end user! You may get unpredictable results if you don't
+% know what you are doing. Internal macros may be changed by me
+% without announcement or warning, so be careful. Use them at your
+% own risk if you cannot resist\ldots
+%
+%^^A =================================================================
+%^^A Initial initialization
+%^^A =================================================================
+% \subsection{Initialization}
+% \label{subsec:init}
+%
+% \begin{length}{\fbi@skip@v}
+% \begin{length}{\fbi@skip@h}
+% This initializes two registers that hold the accumulated
+% horizontal and vertical translation of the print space
+% (especially of the title page).
+% \changes{v0.1a}{2001/09/16}{implemented}
+% \changes{v0.8b}{2002/12/20}{adjustment re-implemented}
+% \begin{macrocode}
+%<*package>
+\newlength{\fbi@skip@v}%
+\newlength{\fbi@skip@h}%
+% \end{macrocode}
+% \end{length}
+% \end{length}
+%
+% \begin{counter}{\fbi@tempcnta}
+% \begin{counter}{\fbi@tempcntb}
+% For various issues we need some counters.
+% \changes{v1.2e}{2006/01/20}{new}
+% \begin{macrocode}
+\newcount\fbi@tempcnta%
+\newcount\fbi@tempcntb%
+% \end{macrocode}
+% \end{counter}
+% \end{counter}
+%
+% \begin{switch}{fbi@draft}
+% This initializes \cmd{\iffbi@draft}. If \cmd{\iffbi@draft} is
+% true, a frame is made around the window in the cover page and
+% some marks are shown that make it easy to check the placement of
+% the title page. This can be controlled by the options
+% \describeoption{draft}\describeoption{final}^^A \Lopt{draft} and
+% \Lopt{final} (see subsection \ref{subsec:optiondeclare}).
+% \changes{v0.3d}{2002/04/03}{new (\Lopt{draft} revision)}
+% \begin{macrocode}
+\newif\iffbi@draft%
+% \end{macrocode}
+% \end{switch}
+%
+% \begin{switch}{fbi@decor}
+% This initializes \cmd{\iffbi@decor}. If \cmd{\iffbi@decor} is
+% true, the `decoration' of the cover page (the text above and
+% below the window and the address of the university) is shown.
+% This can be controlled by the options
+% \describeoption{decor}\describeoption{nodecor}^^A
+% \Lopt{decor} and \Lopt{nodecor} (see subsection
+% \ref{subsec:optiondeclare}).
+% \changes{v1.2e}{2006/01/03}{new}
+% \begin{macrocode}
+\newif\iffbi@decor%
+% \end{macrocode}
+% \end{switch}
+%
+% \begin{switch}{fbi@declaration}
+% This initializes \cmd{\iffbi@declaration}. If
+% \cmd{\iffbi@declaration} is true, the declaration is shown. This
+% can be controlled by the options
+% \describeoption{delcaration}\describeoption{nodeclaration}^^A
+% \Lopt{declaration} and \Lopt{nodeclaration} (see subsection
+% \ref{subsec:optiondeclare}).
+% \changes{v1.2e}{2006/01/05}{new}
+% \begin{macrocode}
+\newif\iffbi@declaration%
+% \end{macrocode}
+% \end{switch}
+%
+% \begin{switch}{fbi@base@ams}
+% \begin{switch}{fbi@base@koma}
+% This initializes \cmd{\iffbi@base@ams} and \cmd{\iffbi@base@koma}.
+% Sometimes we have to do different things, depending on the
+% choosen baseclass. With these switches we can easily distinguish
+% between different baseclasses.
+% \changes{v1.1c}{2003/02/07}{new}
+% \begin{macrocode}
+\newif\iffbi@base@ams%
+\newif\iffbi@base@koma%
+% \end{macrocode}
+% \end{switch}
+% \end{switch}
+%
+% \begin{macro}{\baseclass}
+% By default \package{scrbook} is used as \emph{baseclass}. You may
+% change this behavior by
+% defining \cmd{\baseclass} to the class of your choice.
+% \emph{\textbf{Important:} this has to be done \textbf{before} the
+% \cmd{\documentclass}~command!} (See the example in section
+% \ref{sec:example})
+% \changes{v0.4d}{2002/04/07}{new (\cmd{\baseclass} stuff)}
+% \changes{v0.4f}{2002/07/05}{definition changed}
+% \begin{macrocode}
+\providecommand*{\baseclass}{scrbook}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v0.6d}{2002/10/19}{Hooks: new}
+% \changes{v1.1o}{2004/03/21}{Font 'n Hooks: Fonts}
+%^^A =================================================================
+%^^A We define all fonts here, used in fbithesis.
+%^^A We use \AtEndDocument to inform the user about the bug.
+%^^A =================================================================
+% \subsection{Fonts and Hooks}
+% \label{subsec:hooks}
+%
+% We do not use fixed fonts on the title page but variables, that
+% could be changed by the user. For each element on the title page
+% one variable is defined.
+%
+% \begin{macro}{\fbi@font@author}
+% We use \cmd{\Large} as the default fontsize for the author.
+% \changes{v1.1p}{2004/03/21}{new}
+% \begin{macrocode}
+\newcommand*{\fbi@font@author}{\Large}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@font@title}
+% The title is set in size \cmd{\LARGE} and boldface.
+% \changes{v1.1p}{2004/03/21}{new}
+% \begin{macrocode}
+\newcommand*{\fbi@font@title}{\LARGE\bfseries}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@font@subject}
+% \begin{macro}{\fbi@font@date}
+% For subject and date the fontsize \cmd{\large} is used by
+% default.
+% \changes{v1.1p}{2004/03/21}{new}
+% \begin{macrocode}
+\newcommand*{\fbi@font@subject}{\large}
+\newcommand*{\fbi@font@date}{\large}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\fbi@font@thanks}
+% We use \cmd{\scriptsize} for the thanks-information.
+% \changes{v1.1p}{2004/03/21}{new}
+% \begin{macrocode}
+\newcommand*{\fbi@font@thanks}{\scriptsize}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@font@chair}
+% \begin{macro}{\fbi@font@super}
+% The dates according supervisors and chair are set in
+% the normal fontsize.
+% \changes{v1.1p}{2004/03/21}{new}
+% \begin{macrocode}
+\newcommand*{\fbi@font@chair}{\normalsize}
+\newcommand*{\fbi@font@super}{\normalsize}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+%
+% As already said in subsection \ref{subsec:bugs} (page
+% \pageref{subsec:bugs}), there is a bug
+% in \package{\filename} so that every \cmd{\footnote}~command in
+% the document is ignored if the \cmd{\maketitle} is left out.
+% Because there is no known solution at this time, we have to
+% inform the user about the bug. We use the
+% \cmd{\AtEndDocument}~hook, provided by the \LaTeX-Kernel (see
+% \cite{ltx2e:ltclass}). If we are at the end of the document
+% and \cmd{\fbi@cleanup} wasn't called, there was no
+% \cmd{\maketitle} in the document and an error is thrown:
+% \changes{v0.7d}{2002/11/25}{Hooks: made it an error}
+% \changes{v1.1p}{2004/12/22}{Hooks: use \cmd{\footnote}/
+% \cmd{old@footnote}}
+% \begin{macrocode}
+\AtEndDocument{%
+ \ifx\footnote\@oldfootnote
+ \else%
+ \ClassError{fbithesis}{No \protect\maketitle\space found. Due to a
+ bug in `fbithesis'\MessageBreak every \protect\footnote -command
+ is ignored}{Type <return> to proceed, but please note: all
+ \protect\footnote -commands in the\MessageBreak document have
+ been ignored. See `Known Bugs'\MessageBreak in the documentation
+ of the class for further info.}%
+ \fi%
+}%
+% \end{macrocode}
+%
+%^^A =================================================================
+%^^A Declaration of the options we want to provide
+%^^A =================================================================
+% \subsection{Option Declaration}
+% \label{subsec:optiondeclare}
+%
+% \begin{option}{draft}
+% With the \Lopt{draft}~option we generate
+% some marks that help checking the placement of the title page.
+% See the command \cmd{\fbi@place@marks} for the implementation.
+% \changes{v0.2b}{2002/10/11}{new}
+% \changes{v0.3d}{2002/04/03}{revision}
+% \changes{v0.5f}{2002/09/04}{pass to \emph{baseclass}}
+% \changes{v0.5j}{2002/09/21}{simplified (\env{picture} stuff)}
+% \changes{v1.1o}{2003/12/03}{Feedback}
+% \begin{macrocode}
+\DeclareOption{draft}{%
+ \fbi@drafttrue%
+ \PassOptionsToClass{draft}{\baseclass}
+ \ClassInfo{fbithesis}{Option `draft' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{final}
+% With the \Lopt{final}~option (the default)
+% no marks are shown.
+% \changes{v0.2b}{2001/10/11}{new}
+% \changes{v0.3d}{2002/04/03}{\Lopt{draft} revision}
+% \changes{v1.1o}{2003/12/03}{Feedback}
+% \begin{macrocode}
+\DeclareOption{final}{%
+ \fbi@draftfalse%
+ \ClassInfo{fbithesis}{Option `final' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{german}
+% By using the \cmd{\supervisors}~command these can be added to the
+% title page. With the \Lopt{german}~option
+% (the default) they are captioned by `Gutachter'.
+% \changes{v0.6a}{2002/09/23}{new (internationalization)}
+% \changes{v1.1o}{2003/12/03}{Feedback}
+% \changes{v1.2d}{2005/12/22}{Renamed \cmd{\fbi@str@supervisors}
+% with \cmd{\fb@text@supervisors}}
+% \begin{macrocode}
+\DeclareOption{german}{%
+ \gdef\fbi@text@supervisors{Gutachter:}%
+ \gdef\fbi@text@placendate{Ort, Datum}%
+ \gdef\fbi@text@name{Unterschrift}%
+ \ClassInfo{fbithesis}{Option `german' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{ngerman}
+% The class option \Lopt{ngerman} is just a
+% synonym for \Lopt{german} (see above). Since the
+% class- (or global-) options are passed to the (by
+% \cmd{usepackage}) imported styles the synonym can make things
+% easier: you don't have to specify the optional argument with
+% language-specific packages (see section \ref{subsec:options} on page
+% \pageref{subsec:options}f).
+% \NEWfeature{2003/06/30 v1.1i}
+% \changes{v1.1i}{2003/06/30}{new}
+% \changes{v1.1o}{2003/12/03}{Feedback}
+% \changes{v1.2d}{2005/12/22}{Renamed \cmd{\fbi@str@supervisors}
+% with \cmd{\fb@text@supervisors}}
+% \begin{macrocode}
+\DeclareOption{ngerman}{%
+ \gdef\fbi@text@supervisors{Gutachter:}%
+ \gdef\fbi@text@placendate{Ort, Datum}%
+ \gdef\fbi@text@name{Unterschrift}%
+ \ClassInfo{fbithesis}{Option `ngerman' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{english}
+% Some folks want to write their thesis in English. The German
+% `Gutachter' would spoil the effect. So with the
+% \Lopt{english}~option this is replaced by
+% `Supervisors'.
+% \changes{v0.6a}{2002/09/23}{new (internationalization)}
+% \changes{v1.1o}{2003/12/03}{Feedback}
+% \changes{v1.2d}{2005/12/22}{Renamed \cmd{\fbi@str@supervisors}
+% with \cmd{\fb@text@supervisors}}
+% \begin{macrocode}
+\DeclareOption{english}{%
+ \gdef\fbi@text@supervisors{Supervisors:}%
+ \gdef\fbi@text@placendate{Place, Date}%
+ \gdef\fbi@text@name{Signature}%
+ \ClassInfo{fbithesis}{Option `english' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{american}
+% Again \Lopt{american} is just a synonym
+% for \Lopt{english} (see above).
+% \NEWfeature{2003/06/30 v1.1i}
+% \changes{v1.1i}{2003/06/30}{new}
+% \changes{v1.1o}{2003/12/03}{Feedback}
+% \changes{v1.2d}{2005/12/22}{Renamed \cmd{\fbi@str@supervisors}
+% with \cmd{\fb@text@supervisors}}
+% \begin{macrocode}
+\DeclareOption{american}{%
+ \gdef\fbi@text@supervisors{Supervisors:}%
+ \gdef\fbi@text@placendate{Place, Date}%
+ \gdef\fbi@text@name{Signature}%
+ \ClassInfo{fbithesis}{Option `american' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{decor}
+% It is possible, to show the strings \qm{TECHNISCHE
+% UNIVERSIT\"{A}T DORTMUND} and \qm{FAKULTÄT FÜR INFORMATIK} above
+% and \qm{INTERNE BERICHTE} and \qm{INTERNAL REPORTS} below the
+% cardboard window.
+%
+% With the \Lopt{decor}~option the strings are shown. If you prefer
+% to not show the strings see option \Lopt{nodecor} below.
+% \NEWfeature{2005/12/22 v1.2d}
+% \changes{v1.2d}{2005/12/22}{new}
+% \begin{macrocode}
+\DeclareOption{decor}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \fbi@decortrue%
+ \ClassInfo{fbithesis}{Option `decor' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{nodecor}
+% It is possible, to show the strings \qm{TECHNISCHE
+% UNIVERSIT\"{A}T DORTMUND} and \qm{FAKULTÄT FÜR INFORMATIK} above
+% and \qm{INTERNE BERICHTE} and \qm{INTERNAL REPORTS} below the
+% cardboard window.
+%
+% With the \Lopt{nodecor}~option the strings are \emph{not} shown.
+% Use the \Lopt{decor}~option (see above) to show the strings.
+% \NEWfeature{2005/12/22 v1.2d}
+% \changes{v1.2d}{2005/12/22}{new}
+% \begin{macrocode}
+\DeclareOption{nodecor}{%
+ \fbi@decorfalse%
+ \ClassInfo{fbithesis}{Option `nodecor' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{declaration}
+% \changes{v1.2e}{2006/01/05}{new}
+% \begin{macrocode}
+\DeclareOption{declaration}{%
+% \end{macrocode}
+% \begin{macrocode}
+ \fbi@declarationtrue%
+ \ClassInfo{fbithesis}{Option `declaration' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{nodeclaration}
+% \changes{v1.2e}{2006/01/05}{new}
+% \begin{macrocode}
+\DeclareOption{nodeclaration}{%
+ \fbi@declarationfalse%
+ \ClassInfo{fbithesis}{Option `nodeclaration' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% \begin{option}{a4paper}
+% The default layout for a4paper is defined. There are up to four
+% different values for an element: the vertical and horizontal
+% position of the element and its vertical and horizontal size.
+% Some of the elements share values. For example the horizontal
+% size of the window is equal to the one of windowhead and
+% windowfoot.
+% \NEWfeature{2003/10/08 v1.1n}
+%
+% The values for the horizontal and vertical position of an element
+% specify the left lower egde of it.
+%
+% As the number of dimen-registers is limited in \TeX we use macros
+% to store the coordinates of the elements. The used unit for all
+% values is `cm'.
+% \changes{v1.1g}{2003/03/27}{Layout: definition}
+% \changes{v1.1j}{2003/07/03}{Layout: definition
+% changed to macros}
+% \changes{v1.1n}{2003/10/08}{new}
+% \begin{macrocode}
+\DeclareOption{a4paper}{%
+% \end{macrocode}
+% \begin{macro}{\fbi@size@h@paper}
+% Horizontal size of the whole sheet of paper.
+% \begin{macrocode}
+ \newcommand{\fbi@size@h@paper}{21}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@v@paper}
+% Vertical size of the whole sheet of paper.
+% \begin{macrocode}
+ \newcommand{\fbi@size@v@paper}{29.7}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@h@}
+% Horizontal position of the window, its head, its foot and the
+% chair data.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@h@}{2.9}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@h@square}
+% Horizontal position of the black square.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@h@square}{1.6}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@h@square}
+% Horizontal size of the black square. Since it is a square, the
+% vertical size is equal to this.
+% \begin{macrocode}
+ \newcommand{\fbi@size@h@square}{0.55}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@h@address}
+% Horizontal position of the address line.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@h@address}{12}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@v@windowhead}
+% Vertical position of the windowhead.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@v@windowhead}{25.65}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@v@windowhead}
+% Vertical size of the windowhead. The value is also used by the
+% tulogo.
+% \begin{macrocode}
+ \newcommand{\fbi@size@v@windowhead}{1.45}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@v@window}
+% Vertical position of the window in the cardboard.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@v@window}{15.4}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@v@windowfoot}
+% Verticla position of the windowfoot.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@v@windowfoot}{12.75}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@v@windowfoot}
+% Vertical size of the windowfoot.
+% \begin{macrocode}
+ \newcommand{\fbi@size@v@windowfoot}{1.4}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@h@window}
+% Horizontal size of the window in the cardboard.
+% \begin{macrocode}
+ \newcommand{\fbi@size@h@window}{9.2}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@v@window}
+% Vertical size of the window in the cardboard.
+% \begin{macrocode}
+ \newcommand{\fbi@size@v@window}{9.1}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@v@address}
+% Vertical position of the address.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@v@address}{3.73}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@v@addresshead}
+% Vertical position of the line above the address.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@v@addresshead}{4.35}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@v@addressfoot}
+% Vertical position of the line below the address.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@v@addressfoot}{3.5}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@h@address}
+% Horizontal size of the address line.
+% \begin{macrocode}
+ \newcommand{\fbi@size@h@address}{8.3}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@v@address}
+% Vertical size of the address line.
+% \begin{macrocode}
+ \newcommand{\fbi@size@v@address}{0.45}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@v@chair}
+% Vertical position of the chair data. The value is also used by
+% the chairlogo.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@v@chair}{6.8}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@v@chair}
+% Vertical size of the chair data. The value is alos used by
+% the chairlogo.
+% \begin{macrocode}
+ \newcommand{\fbi@size@v@chair}{3.2}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@h@logo}
+% Horizontal position of the logos. At the time the logos are
+% flush right, so their actual position may differ form this value.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@h@logo}{13}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@h@logo}
+% Horizontal size of the logos. Since the logos aren't streched to
+% this value, the may be free space.
+% \begin{macrocode}
+ \newcommand{\fbi@size@h@logo}{7.2}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@v@scale}
+% Vertical position of the horizontal scales on the left and on the
+% right.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@v@scale}{14.85}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@h@scale}
+% The size between the two horizontal scales on the left and
+% on the right.
+% \begin{macrocode}
+ \newcommand{\fbi@size@h@scale}{19}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@pos@h@scale}
+% Horizontal position of the vertical scales at the top and at the
+% bottom of the paper.
+% \begin{macrocode}
+ \newcommand{\fbi@pos@h@scale}{10.5}
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@size@v@scale}
+% The size between the vertical scales at the top and at the
+% bottom of the paper.
+% \begin{macrocode}
+ \newcommand{\fbi@size@v@scale}{27.7}
+% \end{macrocode}
+% \end{macro}
+% \changes{v1.1o}{2003/12/03}{Feedback}
+% \begin{macrocode}
+ \ClassInfo{fbithesis}{Option `a4paper' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+% To use the cardboard cover page, the document has to be in the
+% format \describeoption{a4paper}\mbox{DIN-A4}. Additionally the
+% \package{\filename}~package does only make sense, if an explicit
+% \describeoption{titlepage}title page is generated. So we pass
+% these essential options to the baseclass.
+% \changes{v1.1d}{2003/02/17}{Options: request
+% \Lopt{a4paper} and \Lopt{titlepage}}
+% \begin{macrocode}
+\PassOptionsToClass{a4paper,titlepage}{\baseclass}
+% \end{macrocode}
+%
+% \begin{option}{*}
+% All other options are passed to the \emph{baseclass}. The user
+% can choose the \emph{baseclass} by defining the macro
+% \cmd{\baseclass} to her favorite document class (see subsection
+% \ref{subsec:load} on page \pageref{subsec:load}).
+% \changes{v0.3d}{2002/04/03}{new (class-changes)}
+% \changes{v0.4d}{2002/04/07}{\cmd{\baseclass} stuff}
+% \changes{v1.1o}{2003/12/03}{Feedback}
+% \begin{macrocode}
+\DeclareOption*{%
+ \PassOptionsToClass{\CurrentOption}{\baseclass}
+ \ClassInfo{fbithesis}{Option `\CurrentOption' choosen}
+}%
+% \end{macrocode}
+% \end{option}
+%
+%^^A =================================================================
+%^^A Process options
+%^^A =================================================================
+% \subsection{Option Processing}
+% \label{subsec:optionproc}
+%
+% If no options are given we assume
+% \describeoption{ngerman}\Lopt{ngerman}, show the strings with
+% \describeoption{decor}\Lopt{decor} and do the
+% \describeoption{final}\Lopt{final}~mode by default. This means
+% that no frames are made. If you specify both (opposing) options
+% like \Lopt{[final,draft]}, the last one (so in this case
+% \Lopt{draft}) `wins' (this is due to the star in
+% \cmd{\ProcessOptions*}).
+% \changes{v0.2b}{2001/10/11}{Option Proc.: new}
+% \changes{v0.4c}{2002/04/06}{Option Proc.: only default opts with
+% no \file{.cfg}}
+% \changes{v0.4h}{2002/08/13}{Option Proc.: \file{.cfg} stuff}
+% \changes{v0.6a}{2002/09/23}{Option Proc.: internationalization}
+% \changes{v1.2d}{2005/12/22}{Option Proc.: default
+% \Lopt{decor}}
+% \begin{macrocode}
+\ExecuteOptions{final,ngerman,decor,nodeclaration}%
+\ProcessOptions*\relax%
+% \end{macrocode}
+%
+%^^A =================================================================
+%^^A Further loading
+%^^A =================================================================
+% \subsection{Loading addition\-al pack\-ages}
+% \label{subsec:loadadd}
+%
+% Load the \emph{baseclass}. The user can choose the
+% \emph{baseclass} by defining \cmd{\baseclass} to a different
+% class.
+% \changes{v0.3d}{2002/04/03}{Loading: new (class-changes)}
+% \changes{v0.4d}{2002/04/07}{Loading: \cmd{\baseclass} stuff}
+% \changes{v0.4e}{2002/04/09}{Loading: \package{german.sty} not
+% needed anymore}
+% \begin{macrocode}
+\LoadClass{\baseclass}
+% \end{macrocode}
+%
+% After \cmd{\LoadClass} the choosen \emph{baseclass} is finally
+% known since it cannot be changed. So now is the right time to
+% set \cmd{\iffbi@base@koma} and \cmd{\iffbi@base@ams}.
+% \changes{v0.7e}{2002/11/26}{Loading: set \cmd{\iffbi@base@koma}}
+% \changes{v1.1e}{2003/03/04}{Loading: set \cmd{\iffbi@base@ams}}
+% \begin{macrocode}
+\begingroup
+ \def\@temptokena{scrbook}
+ \ifx\baseclass\@temptokena
+ \global\fbi@base@komatrue\global\fbi@base@amsfalse
+ \ClassInfo{fbithesis}{KOMA-Script is chosen as baseclass}
+ \else
+ \def\@temptokena{amsbook}
+ \ifx\baseclass\@temptokena
+ \global\fbi@base@amstrue\global\fbi@base@komafalse
+ \ClassInfo{fbithesis}{AMS is chosen as baseclass}
+ \else
+% \end{macrocode}
+% Neither \koma\ nor \ams\ but an unknown documentclass is choosen
+% as \emph{baseclass}. Since both \cmd{\iffbi@base@koma} and
+% \cmd{\iffbi@base@ams} have to be set to |false|, none of the
+% special features in the subsections \ref{subsubsec:koma} (page
+% \pageref{subsubsec:koma}) and
+% \ref{subsubsec:ams} (page \pageref{subsubsec:ams}) are activated.
+% \begin{macrocode}
+ \global\fbi@base@komafalse\global\fbi@base@amsfalse
+ \ClassInfo{fbithesis}{No special class is chosen as baseclass}
+ \fi
+ \fi
+\endgroup
+% \end{macrocode}
+%
+% We need the \cmd{\includegraphics}~command from the
+% \package{graphicx}~package (see \cite{carlisle:graphics}) to
+% place some logos. Since we make use of the option
+% \Lopt{keepaspectratio} we need at least \package{graphicx}
+% 1995/12/06 v0.6h. However in \package{graphicx} 1996/08/05 v1.0a
+% a bug is fixed which could concern us. So to be sure we request
+% v1.0a or later.
+% \changes{v0.5a}{2002/08/14}{Loading: \package{graphicx} required
+% (title-enhance stuff)}
+% \changes{v0.7h}{2002/12/12}{Loading: request at least
+% \package{graphicx} 1996/08/05 v1.0a}
+% \begin{macrocode}
+\RequirePackage{graphicx}[1996/08/05]
+% \end{macrocode}
+%
+%^^A =================================================================
+%^^A Begin of the Main Part
+%^^A =================================================================
+% \subsection{Main Part}
+% \label{subsec:main}
+%
+%^^A =================================================================
+%^^A Define the (userlevel) commands we want to provide
+%^^A =================================================================
+% \subsubsection{User-level Commands}
+% \label{subsubsec:comm}
+%
+% The following four macros are provided by the \LaTeX-kernel
+% (described in \cite{ltx2e:ltsect}) to provide information
+% about the title, author(s) and date of the document. The
+% information is stored away in internal control sequences. It is
+% the task of the \cmd{\maketitle}~command to use this information.
+% Some of these macros keep their original definition, some are
+% enhanced by additional features.
+%
+% \begin{macro}{\title}
+% \begin{macro}{\author}
+% These macros are defined in the \LaTeX kernel and are shown here
+% just for your information.
+% \begin{macrocode}
+% \def\title#1{\gdef\@title{#1}}
+% \def\author#1{\gdef\@author{#1}}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\and}
+% We do want to support the \package{amsbook} document class as
+% possible \emph{baseclass}. Unfortunately the \ams-classes use a
+% different definition of the \cmd{\and}~macro (see
+% \cite{ams:amsclass}). So if the user has choosen
+% \package{amsbook} as baseclass we have to redefine it to the
+% `original' (\package{book}) definition (see
+% \cite{ltx2e:ltsect}).
+% \changes{v1.1c}{2003/02/07}{new (\ams\ stuff)}
+% \changes{v1.1e}{2003/03/04}{use \cmd{\iffbi@base@ams}}
+% \begin{macrocode}
+\iffbi@base@ams
+ \renewcommand*{\and}{% % \begin{tabular}
+ \end{tabular}%
+ \hskip 1em \@plus.17fil%
+ \begin{tabular}[t]{c}}% % \end{tabular}
+\fi%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\date}
+% As in \cite{ltx2e:ltsect} the mandatory argument of
+% \cmd{\date} is stored in \cmd{\@date}. The optional argument is
+% stored in the new macro \cmd{\fbi@startdate}.
+% \changes{v0.6c}{2002/10/15}{new (\cmd{\date} stuff)}
+% \begin{macrocode}
+\renewcommand*{\date}[2][]{%
+ \gdef\fbi@startdate{#1}%
+ \gdef\@date{#2}%
+}%
+% \end{macrocode}
+% \begin{macro}{\fbi@startdate}
+% The \cmd{\date}~macro gets today's date by default. This is
+% already done in the \LaTeX-kernel (see
+% \cite{ltx2e:ltsect}). \cmd{\fbi@startdate} is set to
+% `nothing' by default.
+% \begin{macrocode}
+% \gdef\@date{\today}
+\gdef\fbi@startdate{}
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\@oldfootnote}
+% Rescue the original definition of \cmd{\footnote} before
+% redefining \cmd{\footnote} and \cmd{\thanks}.
+% \changes{v0.5i}{2002/09/19}{new (\cmd{\thanks} stuff)}
+% \begin{macrocode}
+\let\@oldfootnote=\footnote%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\thanks}
+% The usage of the \cmd{\thanks}~command is only allowed inside the
+% window area, namely the commands \cmd{\title}, \cmd{\author},
+% \cmd{\date} and \cmd{\subject} (but it makes sense only with
+% the two first\ldots). We locally restore the function of
+% \cmd{\thanks} inside of \cmd{\fbi@place@window} (see below).
+% \changes{v0.5i}{2002/09/19}{new (\cmd{\thanks} stuff)}
+% \begin{macrocode}
+\renewcommand*{\thanks}[1]{%
+ \ClassError{fbithesis}{With `fbithesis' the
+ use of \protect\thanks\space is only allowed\MessageBreak with the
+ \protect\author\space and the \protect\title\space command}{Type
+ <return> to proceed. The \protect\thanks\space will
+ be ignored.}%
+}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\footnote}
+% The usage of \cmd{\footnote} is ignored on the whole title page.
+% We will restore the original definition from \cmd{\@oldfootnote}
+% in \cmd{\fbi@cleanup} (called by \cmd{\maketitle}). So
+% unfortunately \cmd{\footnote} is not reset to its original
+% definition if there is no \cmd{\maketitle} in the document.
+% This is a know bug (see subsection \ref{subsec:bugs} on page
+% \pageref{subsec:bugs}).
+% \changes{v0.5i}{2002/09/19}{new (\cmd{\thanks} stuff)}
+% \changes{v0.6d}{2002/10/19}{changed}
+% \begin{macrocode}
+\renewcommand*{\footnote}[1]{\ClassWarning{fbithesis}{The use of
+ \protect\footnote\space is not allowed here. Either
+ you\MessageBreak tried \protect\footnote\space on the title
+ page (then you have to\MessageBreak use \protect\thanks\space
+ instead) or you forgot a \protect\maketitle\MessageBreak in
+ you document.\MessageBreak This footnote will be ignored}}%
+% \end{macrocode}
+% \end{macro}
+%
+% The filenames of the university- and chair-logos are stored in
+% two macros named
+% \describemacro{\fbi@logo@tu}\cmd{\fbi@logo@tu} and
+% \describemacro{\fbi@logo@chair}\cmd{\fbi@logo@chair}.
+% ^^ATodo: Abst"ande korrigieren (mehr Text hier), sieht Kacke aus.
+% \begin{macro}{\unidologo}
+% \begin{macro}{\chairlogo}
+% However the macros above are only defined if the files really
+% exist. The macro \cmd{\fbi@testgfile} checks the existance of
+% the file and defines the macro \cmd{\fbi@logo@}\meta{type}. If
+% the file isn't found a warning will be thrown.
+% \changes{v0.5a}{2002/08/14}{new (title-enhance stuff)}
+% \changes{v1.1e}{2003/03/04}{use \cmd{\fbi@testGfile}}
+% \changes{v1.1f}{2003/03/20}{use \meta{type}}
+% \begin{macrocode}
+\newcommand*{\unidologo}[1]{%
+ \fbi@testGfile{tu}{#1}%
+}%
+\newcommand*{\chairlogo}[1]{%
+ \fbi@testGfile{chair}{#1}%
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \begin{macro}{\thesislogo}
+% Besides the university- and chair-logos also a thesis-specific
+% logo is possible. The filename is stored in
+% \describemacro{\fbi@logo@thesis}\cmd{\fbi@logo@thesis}. Again that
+% macro is only defined, if the file exists.
+% \changes{v0.6d}{2002/10/19}{new}
+% \changes{v1.1d}{2003/02/17}{use \cmd{\fbi@testGfile}}
+% \changes{v1.1f}{2003/03/20}{use \meta{type}}
+% \begin{macrocode}
+\newcommand*{\thesislogo}[1]{%
+ \fbi@testGfile{thesis}{#1}%
+}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\thesistype}
+% Due to compatibility reasons with \koma\ the old command
+% \cmd{\thesistype} was renamed to \cmd{\subject} (see below).
+% Since some of the users may already use \cmd{\thesistype}, an
+% warning is given.
+% \changes{v0.7e}{2002/11/26}{new}
+% \begin{macrocode}
+\newcommand*{\thesistype}[1]{%
+ \ClassWarning{fbithesis}{Due to compatibility reasons
+ \protect\thesistype\space was renamed\MessageBreak to
+ \protect\subject. Please change your document}{Type
+ <return> to proceed.}%
+ \gdef\@subject{#1}%
+}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\subject}
+% If the user has chosen \koma\ as \emph{baseclass}, \cmd{\subject}
+% is already defined (see \cite{neukam:scrclass}). The
+% standard \LaTeXe-classes don't provide such a command. So we
+% have to ensure it is present.
+% \changes{v0.5a}{2002/08/14}{new (title-enhance stuff)}
+% \changes{v0.7e}{2002/11/26}{compatibility with \koma}
+% \begin{macrocode}
+\providecommand*{\subject}[1]{%
+ \gdef\@subject{#1}%
+}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\supervisors}
+% This macro is used to fill the \cmd{\fbi@supervis@i} and
+% \cmd{\fbi@supervis@ii} macros.
+% \changes{v0.5b}{2002/08/15}{new (title-enhance stuff)}
+% \changes{v0.7d}{2002/11/25}{internals changed}
+% \begin{macrocode}
+\newcommand*{\supervisors}[2]{
+ \gdef\fbi@supervis@i{#1}%
+ \gdef\fbi@supervis@ii{#2}%
+}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\chair}
+% The chair data is stored in \cmd{\fbi@chair}.
+% \changes{v0.5b}{2002/08/15}{new (title-enhance stuff)}
+% \begin{macrocode}
+\newcommand*{\chair}[1]{%
+ \gdef\fbi@chair{#1}%
+}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\titlevadjust}
+% \begin{macro}{\titlehadjust}
+% These macros are used to set the \cmd{\fbi@skip@v} and
+% \cmd{\fbi@skip@h}~values. Usually a manual positioning isn't
+% needed. In the case of a mismatch the user should correct the
+% positioning of the printer.
+% \changes{v0.1b}{2001/09/17}{implemented}
+% \changes{v0.4f}{2002/07/05}{definition changed}
+% \changes{v0.4f}{2002/07/05}{typo corrected (Thanks Stephan!)}
+% \changes{v0.4h}{2002/08/13}{definition changed: set, not add}
+% \changes{v0.8b}{2002/12/20}{adjustment re-implemented}
+% \changes{v0.8e}{2003/01/01}{throw warning}
+% \changes{v0.8f}{2003/01/03}{inverted sense of direction}
+% \begin{macrocode}
+\newcommand*{\titlevadjust}[1]{%
+ \ClassWarning{fbithesis}{A manual correction of the positioning of
+ the title\MessageBreak page should not be necessary. Refer to
+ section\MessageBreak `Customization' in the documentation for
+ further\MessageBreak info}
+ \setlength{\fbi@skip@v}{#1}%
+}%
+\newcommand*{\titlehadjust}[1]{%
+ \ClassWarning{fbithesis}{A manual correction of the positioning of
+ the title\MessageBreak page should not be necessary. Refer to
+ section\MessageBreak `Customization' in the documentation for
+ further\MessageBreak info}
+ \setlength{\fbi@skip@h}{#1}%
+}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+
+% \changes{v1.2d}{2005/12/22}{Internal: new}
+%^^A =================================================================
+%^^A Define internal macros
+%^^A =================================================================
+% \subsubsection{Internal Macros}
+% \label{subsubsec:internal}
+%
+% \begin{macro}{\fbi@text@tu}
+% \begin{macro}{\fbi@text@do}
+% \begin{macro}{\fbi@text@fi}
+% The macros \cmd{\fbi@text@tu} and \cmd{\fbi@text@fi} hold the
+% text that is shown above the cardboard window.
+%
+% The `\"{A}' consist of more than one token (|\"{A}|). Below we
+% use \cmd{\fbi@dolist} to spread the content of \cmd{\fbi@text@tu}.
+% Since the macro processes tokens, the `\"{A}' has to be also
+% exactly one token.
+% \changes{v1.2e}{2006/01/03}{new}
+% \changes{v1.2m}{2011/02/06}{added \cmd{\fbi@text@do}}
+% \changes{v1.2m}{2011/02/06}{renamed \cmd{\fbi@text@fbi} to
+% \cmd{\fbi@text@fi}}
+% \begin{macrocode}
+\def\fbi@text@tu{TECHNISCHE UNIVERSIT{\fbi@ae}T}%
+\def\fbi@text@do{DORTMUND}%
+\def\fbi@text@fi{FAKULT{\fbi@ae}T F{\fbi@ue}R INFORMATIK}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\fbi@text@ir@de}
+% \begin{macro}{\fbi@text@ir@en}
+% The macros \cmd{fbi@text@ir@de} and \cmd{fbi@text@ir@en} hold the
+% text that is shown below the cardboard window.
+% \changes{v1.2e}{2006/01/03}{new}
+% \begin{macrocode}
+\def\fbi@text@ir@de{INTERNE BERICHTE}%
+\def\fbi@text@ir@en{INTERNAL REPORTS}%
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\fbi@text@address}
+% The macro \cmd{\fbi@text@address} holds the text that is shown in
+% the lower right part of the page.
+% \changes{v1.2e}{2006/01/03}{new}
+% \begin{macrocode}
+\def\fbi@text@address{GERMANY \fbi@dot\space D-44221 DORTMUND}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\maketitle}
+% In the standard \LaTeXe\ classes the definition of
+% \cmd{\maketitle} depends on whether an explicit title page is
+% made. Since we can be sure, that an explicit title page will be
+% generated (see section \ref{subsec:optiondeclare}) we can skip
+% the \cs{if@titlepage}~switch.
+% \changes{v0.1a}{2001/09/16}{basic redefinition}
+% \changes{v0.5c}{2002/08/28}{basic redefinition
+% (\env{picture} stuff)}
+% \changes{v0.5c}{2002/08/28}{swapped out code to a number of
+% new commands (swap out stuff)}
+% \changes{v0.6a}{2002/09/23}{added \cmd{\iffbi@chair} evaluation}
+% \changes{v0.7a}{2002/11/06}{use \cmd{\ClassInfo}}
+% \changes{v0.7g}{2002/11/29}{removed \cmd{\iffbi@chair}
+% evaluation}
+% \changes{v0.7h}{2002/12/12}{support optional argument}
+% \changes{v0.8b}{2002/12/20}{adjustment re-implemented}
+% \changes{v0.8c}{2002/12/30}{invariant vertical positioning}
+% \changes{v0.8d}{2002/12/31}{invariant horizontal positioning}
+% \changes{v0.8f}{2003/01/03}{warnings corrected}
+% \changes{v0.8f}{2003/01/03}{inverted sense of direction of
+% \cmd{\fbi@skip@h} and \cmd{\fbi@skip@v}}
+% \changes{v1.1d}{2003/02/17}{remove \cs{if@titlepage}}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \changes{v1.1n}{2003/10/08}{define helping macros local}
+% \begin{macrocode}
+\renewcommand{\maketitle}[1][1]{%
+ \begin{titlepage}%
+% \end{macrocode}
+%
+% We interrupt the redefinition of \cmd{\maketitle} to introduce a
+% few local macros helping us to create the new layout of the
+% title page. These are put here, because they are only called in
+% \cmd{\maketitle} and can therefore remain local (to the scope of
+% \cmd{\maketitle}). The actual redefinition will take place later
+% (see section \ref{subsubsec:maketitle} on page
+% \pageref{subsubsec:maketitle}).
+%
+% \changes{v1.1n}{2003/10/08}{Local: new}
+%^^A =================================================================
+%^^A Define local macros
+%^^A =================================================================
+% \subsubsection{Local Macros}
+% \label{subsubsec:local}
+%
+% \begin{macro}{\fbi@warning}
+% The macro \cmd{\fbi@warning}\marg{command} warns the user if a
+% baseclass-command \meta{command} is used, that is ignored by
+% \package{\filename}.
+% \changes{v1.1c}{2003/02/07}{new}
+% \begin{macrocode}
+ \newcommand*{\fbi@warning}[1]{%
+ \ClassWarning{fbithesis}{As explained in the documentation some of
+ the title-\MessageBreak affecting commands of KOMA-Script- or
+ AMS-classes are\MessageBreak of no use with
+ `fbithesis'.\MessageBreak The command `\string##1' is ignored}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\extratitle}
+% \begin{macro}{\titlehead}
+% \begin{macro}{\publishers}
+% As described in subsection \ref{subsubsec:koma} (page
+% \pageref{subsubsec:koma}) some of the
+% title-affecting commands from \koma\ are ignored by
+% \package{\filename}. They are redefined so the user gets a
+% warning if he uses them.
+% \changes{v1.1c}{2003/02/07}{redefine \koma-commands}
+% \changes{v1.1e}{2003/03/04}{use \cmd{\iffbi@base@koma}}
+% \begin{macrocode}
+ \iffbi@base@koma
+ \renewcommand*{\extratitle}[1]{\fbi@warning{\extratitle}}%
+ \renewcommand*{\titlehead}[1]{\fbi@warning{\titlehead}}%
+ \renewcommand*{\publishers}[1]{\fbi@warning{\publishers}}%
+ \fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% \begin{macro}{\address}
+% \begin{macro}{\curraddr}
+% \begin{macro}{\email}
+% \begin{macro}{\urladdr}
+% \begin{macro}{\keywords}
+% \begin{macro}{\translator}
+% \begin{macro}{\subjclass}
+% As described in subsection \ref{subsubsec:ams} (page
+% \pageref{subsubsec:ams}) some of the
+% title-affecting commands from \ams\ are ignored by
+% \package{\filename}. They are redefined so the user gets a
+% warning if he uses them.
+% \changes{v1.1c}{2003/02/07}{redefine \ams-commands}
+% \changes{v1.1e}{2003/03/04}{use \cmd{\iffbi@base@ams}}
+% \begin{macrocode}
+ \iffbi@base@ams
+ \renewcommand*{\address}[2][]{\fbi@warning{\address}}%
+ \renewcommand*{\curraddr}[2][]{\fbi@warning{\curraddr}}%
+ \renewcommand*{\email}[2][]{\fbi@warning{\email}}%
+ \renewcommand*{\urladdr}[2][]{\fbi@warning{\urladdr}}%
+ \renewcommand*{\keywords}[1]{\fbi@warning{\keywords}}%
+ \renewcommand*{\translator}[2][]{\fbi@warning{\translator}}%
+ \renewcommand*{\subjclass}[1]{\fbi@warning{\subjclass}}%
+ \fi
+% \end{macrocode}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+% \end{macro}
+%
+% The following three definitions are based on \cmd{\dolist} (see
+% \cite[answer to example 11.5]{knuth:1986:texbook}).
+% \cmd{\fbi@dolist} will be used by \cmd{\fbi@stretchto} (see
+% below).
+% \begin{macro}{\fbi@dolist}
+% Assign the next token to \cmd{\fbi@next} and call
+% \cmd{\fbi@donext} after that.
+% \changes{v0.7d}{2002/11/25}{new}
+% \begin{macrocode}
+ \def\fbi@dolist{\afterassignment\fbi@donext\let\fbi@next= }%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@donext}
+% Process the next token (stored in \cmd{\fbi@next}).
+% \changes{v0.7d}{2002/11/25}{new}
+% \changes{v0.7h}{2002/12/12}{optimization with \cs{expandafter}
+% (Thanks to Stephan)}
+% \begin{macrocode}
+ \def\fbi@donext{%
+% \end{macrocode}
+% If we have reached the end of the list, we stop (do nothing).
+% \begin{macrocode}
+ \ifx\fbi@next\fbi@endlist%
+ \else%
+% \end{macrocode}
+% Otherwise call a macro named \cmd{\fbi@do} for each token.
+% \begin{macrocode}
+ \fbi@do%
+% \end{macrocode}
+% Do a recursive call of \cmd{\fbi@dolist} to process the next
+% token. Of course we have to use \cs{expandafter} to get this
+% actually done \emph{after} the \cs{fi}.
+% \begin{macrocode}
+ \expandafter\fbi@dolist%
+ \fi}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@endlist}
+% Recursive definition of \cmd{\fbi@endlist}.
+% \changes{v0.7d}{2002/11/25}{new}
+% \begin{macrocode}
+ \def\fbi@endlist{\fbi@endlist}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@stretchto}
+% The macro \cmd{\fbi@stretchto}\marg{width}\marg{textmacro} stretches
+% the content of \cs{}\meta{textmacro} to \meta{width}.
+%
+% This command is based on the \package{tracking}-style (see
+% \cite{glazkov:tracking}) by
+% \person{Glazkov}\footnote{\mail[D. A.
+% Glazkov]{glazkov@sci.lpi.msk.su}}.
+%
+% It makes use of the \cmd{\fbi@dolist} defined above to place
+% \cmd{\kern} commands between each two tokens.
+% \cmd{\fbi@stretchto} is used by some of the
+% \cmd{\fbi@place@}\meta{\ldots} commands to stretch a string to a
+% given length.
+% \changes{v0.7d}{2002/11/25}{new}
+% \changes{v0.7f}{2002/11/28}{optimized}
+% \changes{v1.2d}{2005/12/22}{expand textmacro}
+% \begin{macrocode}
+ \newcommand*{\fbi@stretchto}[2]{%
+ \@tempcnta=\z@%
+% \end{macrocode}
+% First we have to count the tokens. So we define \cmd{\fbi@do} to
+% add `1' to a counter and call \cmd{\fbi@dolist} with the string.
+% \begin{macrocode}
+ \def\fbi@do{\advance\@tempcnta by\@ne\relax}%
+% \end{macrocode}
+% Since the second argument is a macro we have to expand it to its
+% content before calling \cmd{\fbi@dolist}
+% \begin{macrocode}
+ \expandafter\fbi@dolist##2\fbi@endlist%
+ \advance\@tempcnta by\m@ne\relax
+% \end{macrocode}
+% After that we calculate the extra space that has to be added
+% between each two tokens.
+% \begin{macrocode}
+ \setbox\@tempboxa=\hbox{##2}%
+ \@tempdima=##1%
+ \advance\@tempdima by-\wd\@tempboxa\relax
+ \divide\@tempdima by\@tempcnta\relax
+% \end{macrocode}
+% Now we call \cmd{\fbi@dolist} again with the string, this time
+% \cmd{\fbi@do} is defined to place an appropriate \cmd{\kern}
+% after each token.
+% \begin{macrocode}
+ \def\fbi@do{%
+ \expandafter\if\space\fbi@next%
+ \setbox\@tempboxa=\hbox{\ }%
+ \else%
+ \setbox\@tempboxa=\hbox{\fbi@next}%
+ \fi%
+ \box\@tempboxa\kern\@tempdima}%
+ \hbox{\expandafter\fbi@dolist##2\fbi@endlist\unkern}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@windowheader}
+% This is the code that does the header above the window. The
+% fontsize of 20 point is rather exact but I'm not yet satisfied
+% with the font and its thickness. We use the font Helvetica,
+% unfortunately it doesn't match exactly (see the `O', `M' or `R').
+% \changes{v0.2a}{2001/09/17}{removed `underfull vbox'-warning}
+% \changes{v0.4e}{2002/04/09}{removed \package{german.sty}
+% usage}
+% \changes{v0.5c}{2002/08/28}{new (swap out stuff)}
+% \changes{v0.5g}{2002/09/12}{corrected}
+% \changes{v0.7d}{2002/11/25}{use \cmd{\fbi@stretchto}}
+% \changes{v0.7i}{2002/12/14}{request font with normal width}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1h}{2003/05/29}{\"{A}-calculations}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \changes{v1.2m}{2011/02/06}{use \cmd{\fbi@ue}}
+% \begin{macrocode}
+ \newcommand*{\fbi@place@windowheader}{%
+% \end{macrocode}
+% The `\"{A}' consists of more than one token (|\"{A}|). Below we
+% use \cmd{\fbi@dolist} to spread a text containing an `\"{A}'.
+% Since the macro processes tokens, the `\"{A}' has to be also
+% exactly one token.
+% \begin{macrocode}
+ \def\fbi@ae{\"{A}}%
+% \end{macrocode}
+% The same applies to ``\"{U}:
+% \begin{macrocode}
+ \def\fbi@ue{\"{U}}%
+ \fontfamily{phv}\fontseries{b}\fontsize{20}{22}\selectfont%
+% \end{macrocode}
+% The height of the header above the window and the logo of the
+% university (see \cmd{\fbi@place@tulogo}) is
+% \cmd{\fbi@size@v@windowhead} (1.45cm). This is, however, meant
+% without the dots of the `\"{A}'. So we have to measure the
+% difference between `\"{A}' and `A' and enlarge the parbox by this
+% value.
+% \begin{macrocode}
+ \setbox\@tempboxa=\hbox{\fbi@ae}%
+ \@tempdima=\ht\@tempboxa%
+ \setbox\@tempboxa=\hbox{A}%
+ \advance\@tempdima by-\ht\@tempboxa%
+ \@tempdimb=\fbi@size@v@windowhead cm%
+ \advance\@tempdimb by \@tempdima%
+% \end{macrocode}
+% Now, having calculated the correct enlarged height of the header,
+% we set the box.
+% \changes{v1.2d}{2005/12/22}{use \cmd{\fbi@text@uni} and
+% \cmd{\fbi@text@fbi}}
+% \changes{v1.2m}{2011/02/06}{use \cmd{\fbi@text@tu},
+% \cmd{\fbi@text@do} and \cmd{\fbi@text@fi}}
+% \begin{macrocode}
+ \parbox[b][\@tempdimb][s]{\fbi@size@h@window cm}{%
+ \vspace{\z@}%
+ \fbi@stretchto{\fbi@size@h@window cm}{\fbi@text@tu}\par
+ \fbi@stretchto{\fbi@size@h@window cm}{\fbi@text@do}\par\vfil%
+ \fontseries{m}\selectfont%
+ \fbi@stretchto{\fbi@size@h@window cm}{\fbi@text@fi}\par}
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@tulogo}
+% If \cmd{\fbi@logo@tu} is defined (by using \cmd{\unidologo}),
+% the logo of the TU Dortmund is set here. It is
+% resized to a height of \cmd{\fbi@size@v@windowhead} (the same
+% height as the height of \cmd{\fbi@place@windowheader}) and a
+% width of \cmd{\fbi@size@h@logo}. By the option
+% \Lopt{keepaspectratio} we take care not to distort the logo.
+% \changes{v0.5a}{2002/08/14}{use \cmd{\fbi@logo@tu}
+% (title-enhance stuff)}
+% \changes{v0.5c}{2002/08/28}{new (swap out stuff)}
+% \changes{v0.6a}{2002/09/23}{control width}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \changes{v1.2m}{2011/02/06}{renamed from \cmd{\fbi@place@unilogo}
+% to \cmd{\fbi@place@tulogo}}
+% \begin{macrocode}
+ \newcommand*{\fbi@place@tulogo}{%
+ \ifx\fbi@logo@tu\undefined\else%
+ \makebox(\fbi@size@h@logo,\fbi@size@v@windowhead)[br]{%
+ \includegraphics[width=\fbi@size@h@logo cm,%
+ height=\fbi@size@v@windowhead cm,%
+ keepaspectratio]{%
+ \fbi@logo@tu}}%
+ \fi
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@window}
+% This is the code that does the window in the cover page. The
+% content of the following \env{minipage} matches the window in the
+% cardboard so it is also visible even with a closed cover.
+% \changes{v0.3e}{2002/04/04}{\Lopt{draft} revision}
+% \changes{v0.4c}{2002/04/06}{swapped out}
+% \changes{v0.4f}{2002/07/05}{definition changed}
+% \changes{v0.5i}{2002/09/19}{\cmd{\thanks} stuff}
+% \changes{v0.6c}{2002/10/15}{\cmd{\date} stuff}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \changes{v1.1p}{2004/03/21}{font variables used}
+% \begin{macrocode}
+ \newcommand*{\fbi@place@window}{%
+ \begin{minipage}[b][\fbi@size@v@window cm][s]{\fbi@size@h@window cm}%
+% \end{macrocode}
+%
+% Before we begin to place the title-information, there have to be
+% redefinitions of some macros concerning
+% \describemacro{\footnote}\cmd{\footnote}/\cmd{\thanks}. Normally
+% the arguments of \describemacro{\thanks}\cmd{\thanks} are
+% collected in a macro named \describemacro{\@thanks}\cmd{\@thanks}
+% and placed at the bottom of the page later. In our case this
+% doesn't make sense, since the contents of \cmd{\@thanks} would be
+% hidden by the cardboard cover while the footnote-marks are
+% visible. So the appropriate place for the contents is the bottom
+% of the window in the cover page. So we can simply use the
+% \cmd{\footnote}~command (rescued in \cs{@oldfootnote}) of the
+% \env{minipage}~environment. Due to the limited space we use a
+% smaller fontsize than normal. Additionally we don't want the
+% \env{minipage}~numbering of footnotes (\textit{a}, \textit{b},
+% \textit{c}, \ldots see \cite{ltx2e:ltboxes}) so we redefine
+% \cmd{\thempfootnote} (see \cite{ltx2e:ltfloat}) to get the
+% \koma~numbering ($\ast$, $\dagger$, $\ddagger$, \ldots).
+% \begin{macrocode}
+ \let\footnotesize=\fbi@font@thanks%
+ \def\thempfootnote{\@fnsymbol\c@mpfootnote}%
+% \end{macrocode}
+% As said before, the footnotes look rather bad on the title page
+% and I do not recommend to use the \cmd{\thanks}~mechanism. It
+% would be a much better idea to put eMail-addresses,
+% acknowledgements, dedications and such things in a preface. So
+% we drop a warning on the usage of \cmd{\thanks}.
+% \begin{macrocode}
+ \def\thanks{\ClassWarningNoLine{fbithesis}{The use of
+ \protect\thanks\space is not recommended with \MessageBreak
+ `fbithesis'. Write a preface instead}%
+% \end{macrocode}
+% Nevertheless we process the footnote:
+% \begin{macrocode}
+ \@oldfootnote}%
+% \end{macrocode}
+% We set the author(s) in a \cmd{\Large}~font. As in the standard
+% \LaTeX\ classes we do this inside a tabular environment to get
+% them in a single column. Since the \ams-classes store the
+% authors in \cmd{\authors} instead of \cmd{\@author} we have to
+% distinguish between the possible baseclasses.
+% \changes{v1.1c}{2003/02/07}{support \ams-title}
+% \changes{v1.1e}{2003/03/04}{use \cmd{\iffbi@base@ams}}
+% \begin{macrocode}
+ \vspace{\z@}%
+ \begin{center}%
+ \vskip 2em%
+ {\fbi@font@author%
+ \lineskip .75em%
+ \begin{tabular}[t]{c}%
+ \iffbi@base@ams\authors\else\@author\fi
+ \end{tabular}\par}%
+% \end{macrocode}
+% We leave a little space and set the title in a \cmd{\LARGE}~font.
+% \begin{macrocode}
+ \vfil%
+ {\fbi@font@title\@title\par}%
+ \vfil%
+% \end{macrocode}
+% If \cmd{\@subject} is defined (by using \cmd{\subject},
+% see above) it is placed here. Before the date we leave a little
+% whitespace again.
+% \begin{macrocode}
+ \ifx\@subject\undefined\else%
+ {\fbi@font@subject\@subject\par}%
+ \vfil%
+ \fi%
+% \end{macrocode}
+% If \cmd{\fbi@startdate} is defined (by using the optional
+% argument of \cmd{\date}, see above) we place it---followed by a
+% dash---before the date.
+% \begin{macrocode}
+ {\fbi@font@date\ifx\@empty\fbi@startdate\else%
+ {\fbi@startdate} --
+ \fi%
+ \@date\par}%
+ \end{center}%
+% \end{macrocode}
+% Without the small skip here the text would glue to the windowborder
+% which would be ugly.
+% \changes{v1.2g}{2006/07/14}{prevent the text to glue to the window}
+% \begin{macrocode}
+ \vskip 2em%
+% \end{macrocode}
+% Since there is already a skip we suppress an additional
+% \cmd{\skip}\cmd{\footins}.
+% \changes{v1.2i}{2006/09/04}{No skip before footnotes}
+% \begin{macrocode}
+ \skip\footins=\z@%
+ \end{minipage}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@thesislogo}
+% If \cmd{\fbi@logo@thesis} is defined (by using \cmd{\thesislogo}),
+% another logo is set here. It is resized to a height of
+% \cmd{\fbi@size@v@window} (the same height as the height of
+% \cmd{\fbi@place@window}) and a width of \cmd{\fbi@size@h@logo}.
+% By the option \Lopt{keepaspectratio} we take care not to distort
+% the logo.
+% \changes{v0.6d}{2002/10/19}{new}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \begin{macrocode}
+ \newcommand*{\fbi@place@thesislogo}{%
+ \ifx\fbi@logo@thesis\undefined\else%
+ \makebox(\fbi@size@h@logo,\fbi@size@v@window)[cr]{%
+ \includegraphics[width=\fbi@size@h@logo cm,%
+ height=\fbi@size@v@window cm,%
+ keepaspectratio]{%
+ \fbi@logo@thesis}}%
+ \fi
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@windowfooter}
+% This is the code that does the footer below the window. Again
+% Helvetica doesn't match exactly but its the best font I got.
+% \changes{v0.5c}{2002/08/28}{new (swap out stuff)}
+% \changes{v0.5g}{2002/09/12}{corrected}
+% \changes{v0.7d}{2002/11/25}{use \cmd{\fbi@stretchto}}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \changes{v1.2d}{2005/12/22}{use \cmd{\fbi@text@ir@de} and
+% \cmd{\fbi@text@ir@en}}
+% \begin{macrocode}
+ \newcommand*{\fbi@place@windowfooter}{%
+ \parbox[b][\fbi@size@v@windowfoot cm][s]{\fbi@size@h@window cm}{%
+ \vspace{\z@}%
+ \fontfamily{phv}\fontseries{m}\fontsize{20}{22}\selectfont%
+ \fbi@stretchto{\fbi@size@h@window cm}{\fbi@text@ir@de}\par\vfil%
+ \fbi@stretchto{\fbi@size@h@window cm}{\fbi@text@ir@en}\par
+ }}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@chair}
+% This is the code that places the contents of \cmd{\fbi@chair},
+% \cmd{\fbi@supervis@i} and \cmd{\fbi@supervis@ii}.
+% \changes{v0.5a}{2002/04/10}{prepared use of
+% \cmd{\fbi@supervisors} and \cmd{\fbi@chair} (title-enhance
+% stuff)}
+% \changes{v0.5c}{2002/08/28}{new (swap out stuff)}
+% \changes{v0.5h}{2002/09/18}{corrected}
+% \changes{v0.5j}{2002/09/21}{bug fixed}
+% \changes{v0.6a}{2002/09/23}{use \cmd{\fbi@str@supervisors}
+% (internationalization)}
+% \changes{v0.6a}{2002/09/23}{use \cmd{\iffbi@chair}}
+% \changes{v0.7g}{2002/11/29}{remove \cmd{\iffbi@chair}}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \changes{v1.1p}{2004/03/21}{font variables used}
+% \changes{v1.2d}{2005/12/22}{Renamed \cmd{\fbi@str@supervisors}
+% with \cmd{\fb@text@supervisors}}
+% \begin{macrocode}
+ \newcommand*{\fbi@place@chair}{%
+ \parbox[b][\fbi@size@v@chair cm][s]{\fbi@size@h@window cm}{%
+ \vspace{\z@}%
+ {\fbi@font@chair\fbi@chair\par}%
+ \vfil%
+ {\fbi@font@super%
+ {\bfseries\fbi@text@supervisors}\par
+ \fbi@supervis@i\par
+ \fbi@supervis@ii\par}
+ }%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@chairlogo}
+% On \cmd{\fbi@chairtrue} the logo of the chair is set here. It is
+% resized to a height of \cmd{\fbi@size@v@chair} (the same height
+% as the height of \cmd{\fbi@place@chair}) and a width of
+% \cmd{\fbi@size@h@logo}. By the option \Lopt{keepaspectratio} we
+% take care not to distort the logo.
+% \changes{v0.5a}{2002/04/10}{use \cmd{\fbi@logo@chair}
+% (title-enhance stuff)}
+% \changes{v0.5c}{2002/08/28}{new (swap out stuff)}
+% \changes{v0.6a}{2002/09/23}{use \cmd{\iffbi@chair}}
+% \changes{v0.6a}{2002/09/23}{control width}
+% \changes{v0.7g}{2002/11/29}{remove \cmd{\iffbi@chair}}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \begin{macrocode}
+ \newcommand*{\fbi@place@chairlogo}{%
+ \ifx\fbi@logo@chair\undefined\else%
+ \makebox(\fbi@size@h@logo,\fbi@size@v@chair)[cr]{%
+ \includegraphics[width=\fbi@size@h@logo cm,%
+ height=\fbi@size@v@chair cm,%
+ keepaspectratio]{%
+ \fbi@logo@chair}}%
+ \fi
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@address}
+% This is the code that does the address.
+% \changes{v0.5d}{2002/08/29}{new}
+% \changes{v0.5g}{2002/09/12}{corrected}
+% \changes{v0.7d}{2002/11/25}{use \cmd{\fbi@stretchto}}
+% \changes{v1.1g}{2003/03/27}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1j}{2003/07/03}{completed preparation (flexible
+% layout stuff)}
+% \changes{v1.2d}{2005/12/22}{use \cmd{\fbi@text@address}}
+% \begin{macrocode}
+ \newcommand*{\fbi@place@address}{%
+ \makebox(\fbi@size@h@address,\fbi@size@v@address)[b]{%
+ \vspace{\z@}%
+ \fontfamily{phv}\fontseries{m}\fontsize{14}{16}\selectfont%
+ \def\fbi@dot{$\cdot$}%
+ \fbi@stretchto{\fbi@size@h@address cm}{\fbi@text@address}}}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@place@marks}
+% We add some marks to the title page in the
+% \Lopt{draft}~mode. This will help you to
+% check the placement of the title page. At the top, bottom, left
+% and right border of the paper millimeter scales are placed, so
+% you can easily read the necessary translation of the title page.
+% If the placement is correct, a frame will match the window of the
+% cardboard.\describeoption{draft}
+% \changes{v0.5d}{2002/08/29}{new}
+% \changes{v0.6d}{2002/10/19}{better: scales}
+% \changes{v1.1j}{2003/07/03}{begun preparation (flexible layout
+% stuff)}
+% \changes{v1.1m}{2003/09/16}{completed preparation (flexible
+% layout stuff)}
+% \begin{macrocode}
+ \iffbi@draft%
+ \newcommand*{\fbi@place@marks}{%
+ \thinlines%
+% \end{macrocode}
+%
+% \begin{macro}{\fbi@hscale}
+% We create a new savebox named \cmd{\fbi@hscale}.
+% \changes{v1.1m}{2003/09/16}{new}
+% \begin{macrocode}
+ \newsavebox{\fbi@hscale}%
+% \end{macrocode}
+% The savebox is defined to contain a horizintal centimeter scale.
+% At each millimeter a line is drawn (longer lines at $0$, $0.5$
+% and $1$ centimeter). Since we want to make the center of the
+% left line the reference point, each line has to be centered.
+% So we have to move the starting points of each line by the half of
+% the line's length.
+% \begin{macrocode}
+ \savebox{\fbi@hscale}(0,0){%
+% \end{macrocode}
+% First we draw a long line at $0$ and $1$ centimeter.
+% \begin{macrocode}
+ \multiput(0,-0.6)(1,0){2}{%
+ \put(0,0){\line(0,1){1.2}}%
+ }%
+% \end{macrocode}
+% A semilong line is placed at $0.5$ centimeter.
+% \begin{macrocode}
+ \put(0.5,-0.4){\line(0,1){0.8}}%
+% \end{macrocode}
+% The rest is filled with short lines every $0.1$ centimeter.
+% \begin{macrocode}
+ \multiput(0.1,-0.15)(0.1,0){9}{%
+ \put(0,0){\line(0,1){0.3}}%
+ }%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@vscale}
+% We create a new savebox named \cmd{\fbi@vscale}.
+% \begin{macrocode}
+ \newsavebox{\fbi@vscale}%
+% \end{macrocode}
+% \changes{v1.1m}{2003/09/16}{new}
+% The savebox is defined to contain a vertical centimeter scale.
+% At each millimeter a line is drawn (longer lines at $0$, $0.5$
+% and $1$ centimeter). Since we want to make the center of the
+% bottom line the reference point, each line has to be centered.
+% So we have to move the starting points of each line by the half of
+% the line's length.
+% \begin{macrocode}
+ \savebox{\fbi@vscale}(0,0){%
+% \end{macrocode}
+% First we draw a long line at $0$ and $1$ centimeter.
+% \begin{macrocode}
+ \multiput(-0.6,0)(0,1){2}{%
+ \put(0,0){\line(1,0){1.2}}%
+ }%
+% \end{macrocode}
+% A semilong line is placed at $0.5$ centimeter.
+% \begin{macrocode}
+ \put(-0.4,0.5){\line(1,0){0.8}}%
+% \end{macrocode}
+% The rest is filled with short lines every $0.1$ centimeter.
+% \begin{macrocode}
+ \multiput(-0.15,0.1)(0,0.1){9}{%
+ \put(0,0){\line(1,0){0.3}}%
+ }%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% Now we continue with placing the marks. First we generate a
+% frame showing the window of the cardboard. This is useful while
+% layouting the stuff in it.
+% \begin{macrocode}
+ \put(\fbi@pos@h@,\fbi@pos@v@window){%
+ \framebox(\fbi@size@h@window,\fbi@size@v@window){}}%
+% \end{macrocode}
+% Two horizontal scales a placed, one at the left the other at the
+% right border of the page. We begin with the left scale,
+% vertically spaced (at \cmd{\fbi@hscalemid}). The second one is
+% placed with a distance of \cmd{\fbi@hscaleleft} at the right
+% border of the page.
+% \begin{macrocode}
+ \multiput(0,\fbi@pos@v@scale)(\fbi@size@h@scale,0){2}{%
+% \end{macrocode}
+% Each scale is two centimeters long. A horizontal
+% one-centimeter-scale is saved in the box \cmd{\fbi@hscale}. We
+% use it twice.
+% \begin{macrocode}
+ \multiput(0,0)(1,0){2}{%
+ \put(0,0){\usebox{\fbi@hscale}}%
+ }%
+ }%
+% \end{macrocode}
+% This is some sort of bad hack here. I don't know why the scales
+% have to be moved by $0.5$ centimeter, but otherwise it wouldn't
+% be correct. If someone knows the reason I'll be all ears!
+% \begin{macrocode}
+ \put(0,0.5){%
+% \end{macrocode}
+% Two vertical scales, one at the bottom the other at the top of
+% the page a placed. We begin with the bottom scale, horizontally
+% spaced (at \cmd{\fbi@vscalemid}). The second one is placed with
+% a distance of \cmd{\fbi@vscalebottom} at the top of the page.
+% \begin{macrocode}
+ \multiput(\fbi@pos@h@scale,0)(0,\fbi@size@v@scale){2}{%
+% \end{macrocode}
+% Each scale is two centimeters long. A vertical
+% one-centimeter-scale is saved in the box \cmd{\fbi@vscale}. We
+% use it twice.
+% \begin{macrocode}
+ \multiput(0,0)(0,1){2}{%
+ \put(0,0){\usebox{\fbi@vscale}}%
+ }%
+ }%
+ }%
+% \end{macrocode}
+% \begin{macrocode}
+ }%
+ \else%
+ \let\fbi@place@marks=\relax
+ \fi%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@text@declaration}
+% The macro \cmd{\fbi@text@declaration} holds the text for the
+% declaration.
+% \changes{v1.2e}{2006/01/05}{new}
+% \begin{macrocode}
+\def\fbi@text@declaration{%
+% \end{macrocode}
+% We have to find out how many authors there are. To do this we
+% redefine the macro \cmd{\and} and expand the macro \cmd{\@author}
+% (or \cmd{\authors} if we are using \ams). To make the changes
+% local we open a group
+% \begin{macrocode}
+ \begingroup
+ \fbi@tempcnta=\z@%
+ \@tempswafalse%
+% \end{macrocode}
+% \begin{macro}{\and}
+% Now we redefine the macro \cmd{\and}. After this we are able to
+% detect the use of the macro because it sets the switch
+% \cmd{\@tempswa} to true.
+% \changes{v1.2e}{2006/01/17}{new}
+% \changes{v1.2g}{2006/07/17}{make switch global}
+% \begin{macrocode}
+ \renewcommand*{\and}{%
+% \end{macrocode}
+% Since we are in a group here we cannot use \cmd{\@tempswatrue}.
+% This would last only until the end of the group. We want to have
+% a global switch, so we need to do the \cmd{\let} manually.
+% \begin{macrocode}
+ \global\let\if@tempswa=\iftrue%
+ \global\advance\fbi@tempcnta by \@ne%
+ }%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\thanks}
+% Perhaps there are \cmd{\thanks}-calls in \cmd{authors}. We have to
+% make these harmless.
+% \changes{v1.2e}{2006/01/18}{new}
+% \begin{macrocode}
+ \let\thanks=\@gobble%
+% \end{macrocode}
+% \end{macro}
+%
+% The macro \cmd{\@author} has to be executed so the changed
+% definition of \cmd{\and} comes to work. Since we do not want to put
+% something on paper here we ``print'' in a box.
+% \begin{macrocode}
+ \setbox\@tempboxa=\vbox{\iffbi@base@ams\authors\else\@author\fi}%
+ \ClassInfo{fbithesis}{Number of authors: \the\fbi@tempcnta +1}%
+% \end{macrocode}
+% We do not need the content of the box \cmd{\@tempboxa} we only
+% need the macro \cmd{\@author} being completly expanded. With the
+% switch \cmd{\@tempswa} we are now able to determine wether there
+% is more than one author. So we can define the text-macros:
+% \begin{macro}{\fbi@text@mewe}
+% The macro \cmd{fbi@text@mewe}
+% Currently only the german language is supported.
+% \changes{v1.2e}{2006/01/05}{new}
+% \changes{v1.2e}{2006/01/17}{support for more than one author}
+% \begin{macrocode}
+ \xdef\fbi@text@mewe{\if@tempswa wir\else ich\fi}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@text@have}
+% Currently only the german language is supported.
+% \changes{v1.2e}{2006/01/05}{new}
+% \changes{v1.2e}{2006/01/17}{support for more than one author}
+% \begin{macrocode}
+ \xdef\fbi@text@have{\if@tempswa haben\else habe\fi}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@text@declare}
+% Currently only the german language is supported.
+% \changes{v1.2e}{2006/01/05}{new}
+% \changes{v1.2e}{2006/01/17}{support for mpre than one author}
+% \begin{macrocode}
+ \xdef\fbi@text@declare{\if@tempswa erkl\"{a}ren\else erkl\"{a}re\fi}%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\fbi@text@work}
+% Currently only then german language is supported.
+% \changes{v1.2e}{2006/01/17}{new}
+% \begin{macrocode}
+ \xdef\fbi@text@work{%
+ \if@tempswa
+ entsprechend gekennzeichneten Teile der vorliegenden\space%
+ Gruppenarbeit%
+ \else
+ vorliegende Arbeit%
+ \fi
+ }%
+% \end{macrocode}
+% \end{macro}
+% \begin{macro}{\and}
+% Again we redefine the makro \cmd{\and}. For the declaration text we
+% need a comma-separated list of all authors but the last author
+% separated by `und'.
+% \changes{v1.2e}{2006/01/18}{new}
+% \begin{macrocode}
+ \fbi@tempcntb=\z@%
+ \renewcommand*{\and}{%
+ \advance\fbi@tempcntb by \@ne%
+% \end{macrocode}
+% The number of authors: \Lcount{fbi@tempcnta}. Up to
+% \Lcount{fbi@tempcnta} we insert a comma between two authors, for
+% the last author we insert an `und'.
+% \begin{macrocode}
+ \ifnum\fbi@tempcntb<\fbi@tempcnta
+ \unskip ,\space%
+ \else
+ und\space%
+ \fi
+ }%
+% \end{macrocode}
+% \end{macro}
+% \begin{macrocode}
+ Hiermit \fbi@text@declare\space\fbi@text@mewe ,
+ \iffbi@base@ams\authors\else\@author\fi , dass \fbi@text@mewe\ die
+ \fbi@text@work\ selbstst\"{a}ndig verfasst und keine anderen als
+ die angegebenen Quellen und Hilfsmittel verwendet \fbi@text@have .
+ Zitate \fbi@text@have\space\fbi@text@mewe\ stets kenntlich
+ gemacht.
+ \endgroup
+}%
+% \end{macrocode}
+% \end{macro}
+%
+% Now we have all the macros defined hepling us in
+% \cmd{\maketitle}. We are now able to continue with the
+% redefinition of this central macro.
+%
+% \changes{v1.1n}{2003/10/08}{Redef. of \cmd{\maketitle}: new}
+%^^A =================================================================
+%^^A Continuation of \renewcommand{\maketitle}
+%^^A =================================================================
+% \subsubsection{Redefinition of \cmd{\maketitle}}
+% \label{subsubsec:maketitle}
+%
+% The \koma-classes provide a mechanism to set the number, the page
+% numbering will start with. This is done by an optional argument
+% to \cs{maketitle} and defaults to $1$.
+% \begin{macrocode}
+ \setcounter{page}{#1}%
+% \end{macrocode}
+% Now here comes the `pretty good guess'. We accumulate all
+% vertical translations of the print space calculated by \TeX\ in
+% \Llength{\fbi@skip@v} and the horizontal ones in
+% \Llength{\fbi@skip@h}. If the printers positioning is correct we
+% now know exactly at which position on the page we are.
+% \begin{macrocode}
+ \addtolength{\fbi@skip@v}{\topmargin}%
+ \addtolength{\fbi@skip@v}{\headheight}%
+ \addtolength{\fbi@skip@v}{\headsep}%
+ \addtolength{\fbi@skip@v}{\topskip}%
+ \addtolength{\fbi@skip@v}{\baselineskip}%
+ \addtolength{\fbi@skip@h}{\oddsidemargin}%
+ \addtolength{\fbi@skip@v}{1in}%
+ \addtolength{\fbi@skip@h}{1in}%
+ \addtolength{\fbi@skip@v}{\voffset}%
+ \addtolength{\fbi@skip@h}{\hoffset}%
+% \end{macrocode}
+% For the interested user the resulting values are written into the
+% \file{.log}~file.
+% \begin{macrocode}
+ \ClassInfo{fbithesis}{%
+ These are the calculated values describing the\MessageBreak
+ translation of the print space:\MessageBreak Vertical
+ skip\space\space\space=\space\the\fbi@skip@v\MessageBreak
+ Horizontal skip\space=\space\the\fbi@skip@h}%
+% \end{macrocode}
+% With \cmd{\fbi@skip@v} and \cmd{\fbi@skip@h} we vertically and
+% horizontally place the title page.
+% \begin{macrocode}
+ \null\vskip -\fbi@skip@v\vbox to \z@{%
+ \noindent\hskip -\fbi@skip@h\hb@xt@\z@{%
+% \end{macrocode}
+% We open a \env{picture}~environment over the whole page. This
+% allows us to place the components exactly where we want them.
+% \begin{macrocode}
+ \setlength{\unitlength}{1cm}%
+ \@picture(\fbi@size@h@paper,\fbi@size@v@paper)(0,0)
+% \end{macrocode}
+% If the decoration is to be shown \ldots
+% \begin{macrocode}
+ \iffbi@decor
+% \end{macrocode}
+% place the header above the window \ldots
+% \begin{macrocode}
+ \put(\fbi@pos@h@,\fbi@pos@v@windowhead){\fbi@place@windowheader}%
+% \end{macrocode}
+% and place the black filled square.
+% \begin{macrocode}
+ \put(\fbi@pos@h@square,\fbi@pos@v@windowhead){%
+ \rule{\fbi@size@h@square cm}{\fbi@size@h@square cm}}%
+ \fi
+% \end{macrocode}
+% Place the logo of the TU Dortmund (if it is provided).
+% \begin{macrocode}
+ \put(\fbi@pos@h@logo,\fbi@pos@v@windowhead){\fbi@place@tulogo}%
+% \end{macrocode}
+% This is now the window in the cover page. Depending on
+% \cmd{\iffbi@draft} the \cmd{\fbi@place@window} is framed or not.
+% \changes{v0.4c}{2002/04/06}{swapped out code to
+% \cmd{\fbi@place@windo}}
+% \begin{macrocode}
+ \put(\fbi@pos@h@,\fbi@pos@v@window){\fbi@place@window}%
+% \end{macrocode}
+% Place the thesis-logo (if it is provided).
+% \begin{macrocode}
+ \put(\fbi@pos@h@logo,\fbi@pos@v@window){\fbi@place@thesislogo}%
+% \end{macrocode}
+% Place the footer below the window if the decoration is to be shown.
+% \begin{macrocode}
+ \iffbi@decor
+ \put(\fbi@pos@h@,\fbi@pos@v@windowfoot){\fbi@place@windowfooter}%
+ \fi
+% \end{macrocode}
+% Place the chair and the supervisors.
+% \changes{v0.5f}{2002/09/04}{placement corrected
+% (\env{picture} stuff)}
+% \begin{macrocode}
+ \put(\fbi@pos@h@,\fbi@pos@v@chair){\fbi@place@chair}%
+% \end{macrocode}
+% Place the logo of the chair.
+% \changes{v0.5f}{2002/09/04}{placement corrected
+% (\env{picture} stuff)}
+% \begin{macrocode}
+ \put(\fbi@pos@h@logo,\fbi@pos@v@chair){\fbi@place@chairlogo}%
+% \end{macrocode}
+% Place the address on the right side, near the bottom of the page.
+% \changes{v0.5d}{2002/08/29}{added address placement}
+% \changes{v0.5f}{2002/09/04}{placement corrected
+% (\env{picture} stuff)}
+% \begin{macrocode}
+ \iffbi@decor
+ \linethickness{0.5mm}%
+ \put(\fbi@pos@h@address,\fbi@pos@v@addresshead){\line(1,0){%
+ \fbi@size@h@address}}%
+ \put(\fbi@pos@h@address,\fbi@pos@v@addressfoot){\line(1,0){%
+ \fbi@size@h@address}}%
+ \put(\fbi@pos@h@address,\fbi@pos@v@address){\fbi@place@address}%
+ \fi
+% \end{macrocode}
+% If we are in \describeoption{draft}\Lopt{draft}~mode the frames
+% are placed on the page.
+% \begin{macrocode}
+ \fbi@place@marks%
+% \end{macrocode}
+% Close the \env{picture}~environment and prevent overfull h- and
+% vboxes.
+% \begin{macrocode}
+ \endpicture\hss}%
+ \vss}%
+% \end{macrocode}
+% The following code is based on (and mostly copied from)
+% \cite{neukam:scrclass}. With it the enhanced title of \koma\
+% is also provided by \package{\filename}. For a description see
+% \cite{kohm:komabuch}.
+% \changes{v0.7e}{2002/11/26}{support \koma-title}
+% \changes{v1.1e}{2003/03/04}{use \cmd{\iffbi@base@koma}}
+% \begin{macrocode}
+ \iffbi@base@koma
+ \if@twoside
+ \clearpage\thispagestyle{empty}%
+ \noindent\begin{minipage}[t]{\textwidth}%
+ \ifx\@uppertitleback\undefined\else%
+ \@uppertitleback%
+ \fi%
+ \end{minipage}\par%
+ \vfill%
+ \noindent\begin{minipage}[b]{\textwidth}%
+ \ifx\@lowertitleback\undefined\else%
+ \@lowertitleback%
+ \fi%
+ \end{minipage}%
+ \fi
+ \fi
+% \end{macrocode}
+% \changes{v1.2e}{2006/01/18}{declaration implemented}
+% \changes{v1.2e}{2006/01/23}{signature lines implemented}
+% \changes{v1.2j}{2008/02/17}{layout of signatures changed}
+% \begin{macrocode}
+ \if@twoside
+ \iffbi@declaration
+ \cleardoublepage\thispagestyle{empty}%
+ \noindent\begin{minipage}[t]{\textwidth}%
+ \noindent\fbi@text@declaration\par%
+ \vspace{1cm}%
+ \fbi@tempcntb=\z@%
+ \loop
+ \vspace{1.5cm}%
+ \noindent\rule{6cm}{1pt}\hspace{0.5cm}%
+ \rule{6cm}{1pt}\par%
+ \noindent\parbox{6cm}{\small\fbi@text@placendate}\hspace{0.5cm}%
+ \parbox{6cm}{\small\fbi@text@name}\par%
+ \ifnum\fbi@tempcntb<\fbi@tempcnta
+ \advance\fbi@tempcntb by \@ne%
+ \repeat
+ \end{minipage}
+ \fi
+ \fi
+% \end{macrocode}
+% This, too, is based on \cite{neukam:scrclass}. However since the
+% \ams-classes use a different macro for the dedication, we have to
+% distinguish between the baseclasses.
+% \changes{v1.1c}{2003/02/07}{support \ams-title}
+% \changes{v1.1e}{2003/03/04}{use \cmd{\iffbi@base@ams} and
+% \cmd{\iffbi@base@koma}}
+% \begin{macrocode}
+ \iffbi@base@ams
+ \ifx\@dedicatory\@empty\else
+ \clearpage\thispagestyle{empty}\null\vfill
+ {\centering\Large\@dedicatory\par}
+ \vskip \z@ \@plus3fill
+ \if@twoside\clearpage\thispagestyle{empty}\cleardoublepage\fi
+ \fi
+ \else
+ \iffbi@base@koma
+ \ifx\@dedication\@empty\else
+ \clearpage\thispagestyle{empty}\null\vfill
+ {\centering\Large\@dedication\par}
+ \vskip \z@ \@plus3fill
+ \if@twoside%
+ \clearpage\thispagestyle{empty}\cleardoublepage%
+ \fi
+ \fi
+ \fi
+ \fi
+% \end{macrocode}
+% Finish the title page.
+% \begin{macrocode}
+ \end{titlepage}%
+% \end{macrocode}
+% Clean things up and save memory.
+% \changes{v0.6a}{2002/09/23}{use \cmd{\fbi@cleanup}}
+% \begin{macrocode}
+ \fbi@cleanup%
+}%
+% \end{macrocode}
+% \end{macro}
+%
+% \changes{v1.1n}{2003/10/08}{Internal: new}
+%^^A =================================================================
+%^^A Define internal commands
+%^^A =================================================================
+% \subsubsection{Internal Commands}
+% \label{subsubsec:intern}
+%
+% \begin{macro}{\fbi@cleanup}
+% After the title is set we have to do some cleanup.
+% \changes{v0.6a}{2002/09/23}{new}
+% \changes{v0.6d}{2002/10/19}{\cmd{\date}- and
+% \cmd{\thesislogo}-stuff}
+% \changes{v0.7e}{2002/11/26}{\koma-stuff}
+% \changes{v1.1p}{2004/03/21}{\cmd{\fbi@place@}|*|-commands removed}
+% \changes{v1.1p}{2004/03/21}{made global}
+% \changes{v1.2b}{2005/01/03}{cleanup isn't that neccessary}
+% \begin{macrocode}
+\newcommand*{\fbi@cleanup}{%
+% \end{macrocode}
+% We reset the \Lcount{footnote}~counter and restore
+% \cmd{\footnote}'s original definition.
+% \begin{macrocode}
+ \setcounter{footnote}{0}%
+ \global\let\footnote=\@oldfootnote
+}%
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\fbi@testGfile}
+% This command is mostly based on the definition of
+% \cmd{\Ginclude@graphics}, part of the \package{graphics}-package
+% (see \cite{ltx2e:graphics} by \person{David P.\ Carlisle}.
+%
+% The macro \cmd{\fbi@testGfile}\marg{type}\marg{filename} is used
+% to ensure a graphics file \meta{filename} can in fact be found by
+% \TeX's search path. As \meta{type} one out of |tu|, |chair| or
+% |thesis| is possible. The macro is called by the macros
+% \cmd{\tulogo}, \cmd{\chairlogo} or \cmd{\thesislogo}. Otherwise
+% these macros would just define the corresponding internal
+% \describecsfamily{fbi@logo@\meta{type}}
+% \cmd{\fbi@logo@}\meta{type}. So if a graphics file is missing,
+% the user would get an error not until these macros are called in
+% \cmd{\maketitle}.
+% \changes{v1.1d}{2003/02/17}{new}
+% \changes{v1.1e}{2003/03/04}{finished}
+% \changes{v1.1f}{2003/03/20}{use \meta{type}}
+% \changes{v1.2m}{2011/02/06}{type `uni' renamed to `tu'}
+% \begin{macrocode}
+\newcommand*{\fbi@testGfile}[2]{
+% \end{macrocode}
+% Enclose the following in a group to make changes local.
+% \begin{macrocode}
+ \begingroup
+ \let\input@path\Ginput@path
+% \end{macrocode}
+% The filename is parsed: we have to know if an extension is given.
+% \begin{macrocode}
+ \filename@parse{#2}%
+ \ifx\filename@ext\relax
+% \end{macrocode}
+% If there is no extension, all possible ones are tried:
+% \begin{macrocode}
+ \@for\Gin@temp:=\Gin@extensions\do{%
+% \end{macrocode}
+% If we already found an existing file using one of the possible
+% extensions, we do nothing.
+% \begin{macrocode}
+ \ifx\Gin@ext\relax
+% \end{macrocode}
+% Otherwise, given the possible extension \cmd{\Gin@temp} check
+% whether the file exists. If it does \cmd{\Gin@ext} will be set
+% to this extension.
+% \begin{macrocode}
+ \Gin@getbase\Gin@temp
+ \fi}%
+ \else
+% \end{macrocode}
+% If the user supplied an explicit extension, try that one only.
+% \begin{macrocode}
+ \Gin@getbase{\Gin@sepdefault\filename@ext}%
+ \fi
+ \ifx\Gin@ext\relax
+% \end{macrocode}
+% If no file is found, throw a warning. The calling
+% \Bslash\meta{type}|logo| command will be ignored.
+% \begin{macrocode}
+ \ClassWarning{fbithesis}{File `#2' not found. The command
+ `\backslash #1'\MessageBreak is ignored}
+% \end{macrocode}
+% If the graphics file really exists, set
+% \describecsfamily{fbi@logo@\meta{type}}\cs{fbi@logo@}\meta{type}
+% to \meta{filename}.
+% \begin{macrocode}
+ \else\expandafter\gdef\csname fbi@logo@#1\endcsname{#2}\fi
+ \endgroup%
+}
+% \end{macrocode}
+% \end{macro}
+%
+%^^A =================================================================
+%^^A Config file
+%^^A =================================================================
+% \subsection{Load Configuration}
+% \label{subsec:loadconfig}
+%
+% Input a local configuration file (\file{\filename.cfg}), if it
+% exists.
+% \changes{v0.3d}{2002/04/03}{Config: use \file{\filename.cfg}}
+% \changes{v0.4h}{2002/08/13}{Config: changed (\file{.cfg} stuff)}
+% \begin{macrocode}
+\InputIfFileExists{fbithesis.cfg}
+ {\typeout{****************************************^^J%
+ * Local config file fbithesis.cfg used *^^J%
+ ****************************************}
+ }{}%
+%</package>
+% \end{macrocode}
+%
+%^^A =================================================================
+%^^A Here the \StopEventually stuff will be appended (if we build
+%^^A the `programmer' docu)
+%^^A =================================================================
+% \Finale
+%
+\endinput
+%
+% end of file `fbithesis.dtx'
+%%% Local Variables:
+%%% mode: texdoc
+%%% TeX-master: t
+%%% End:
diff --git a/macros/latex/contrib/fbithesis/fbithesis.dtx.asc b/macros/latex/contrib/fbithesis/fbithesis.dtx.asc
new file mode 100644
index 0000000000..337fe6c64f
--- /dev/null
+++ b/macros/latex/contrib/fbithesis/fbithesis.dtx.asc
@@ -0,0 +1,7 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2.0.16 (Darwin)
+
+iEYEABECAAYFAk1PMB4ACgkQWcUh6vTSSsmDHACfWWo07Arev+7Y6o1QcSyjtIAo
+U7QAoKCgS9t/0SRqP0YQf2dFPZiAmulq
+=Vs+o
+-----END PGP SIGNATURE-----
diff --git a/macros/latex/contrib/fbithesis/fbithesis.ins b/macros/latex/contrib/fbithesis/fbithesis.ins
new file mode 100644
index 0000000000..7b7da61db3
--- /dev/null
+++ b/macros/latex/contrib/fbithesis/fbithesis.ins
@@ -0,0 +1,192 @@
+%% LaTeX2e file `fbithesis.ins'
+%% generated by the `filecontents' environment
+%% from source `fbithesis' on 2011/02/07.
+%%
+%% fbithesis.ins, the batch file for the fbithesis package
+%% Copyright (C) 2002-2011 Andre Dierker
+%%
+%% This file is part of the fbithesis package.
+%% -------------------------------------------
+%%
+%% It may be distributed and/or modified under the conditions of the
+%% LaTeX Project Public License, either version 1.3 of this license
+%% or (at your option) any later version.
+%%
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% In particular, NO PERMISSION is granted to modify the contents of
+%% this file since it contains the legal notices that are placed in
+%% the files it generates.
+%%
+%% This file may not be distributed without the original source file
+%% fbithesis.dtx.
+%%
+%% The list of all files belonging to the fbithesis package is given
+%% in the file `README'.
+%%
+%% This file will generate fast loadable files and documentation
+%% driver files from the .dtx files in this package when run through
+%% LaTeX or TeX.
+%%
+%% ------------------- start of docstrip commands -------------------
+\input docstrip.tex
+%
+\ifToplevel{\ifx\askonceonly\undefined%
+\Msg{**********************************************}%
+\Msg{*}%
+\Msg{* This installation requires docstrip}%
+\Msg{* version 2.4e or later.}%
+\Msg{*}%
+\Msg{* An older version of docstrip has been input}%
+\Msg{*}%
+\Msg{**********************************************}%
+\errhelp{Move or rename old docstrip.tex.}%
+\errmessage{Old docstrip in input path}%
+\batchmode%
+\csname @@end\endcsname%
+\fi%
+}%
+%
+%% Define standard text:
+%
+\def\nline{^^J\MetaPrefix\space}%
+\def\stdtext{%
+Copyright (C) 2002-2011 Andre Dierker\nline\nline%
+This file is part of the fbithesis package.\nline%
+-------------------------------------------\nline\nline%
+It may be distributed and/or modified under the conditions of the\nline%
+LaTeX Project Public License, either version 1.3 of this license or\nline%
+(at your option) any later version.\nline\nline%
+The latest version of this license is in\nline%
+\space\space http://www.latex-project.org/lppl.txt\nline%
+and version 1.3 or later is part of all distributions of LaTeX\nline%
+version 2005/12/01 or later.\nline\nline%
+This file may not be distributed without the original source file\nline%
+`\inFileName'.\nline\nline%
+The list of all files belonging to the fbithesis package is given\nline%
+in the file `README'.}
+%
+%% Declare preambles (and use \stdtext):
+%
+\declarepreamble\driver
+
+This is `\outFileName', the documentation driver for the fbithesis
+package.
+\stdtext
+
+This is the driver file to produce the LaTeX documentation from the
+original source file `\inFileName'.
+
+Make changes to it as needed. (Never edit the file `\inFileName'!)
+
+\endpreamble%
+%
+\declarepreamble\package
+
+This is `\outFileName', a LaTeX2e package providing a replacement
+for the maketitle command.
+\stdtext
+
+For more details, LaTeX the source `\inFileName'.
+
+\endpreamble%
+%
+\declarepreamble\example
+
+This is `\outFileName', an example file for the fbithesis package.
+\stdtext
+
+For more details, LaTeX the source `\inFileName'.
+
+\endpreamble%
+%
+\declarepreamble\config
+
+This is `\outFileName', a configuration file for the fbithesis
+package.
+\stdtext
+
+For more details, LaTeX the source `\inFileName'.
+
+\endpreamble%
+%
+\keepsilent%
+%
+%% Greeting:
+%
+\askforoverwritetrue%
+%
+\ifToplevel{%
+ \Msg{}%
+ \Msg{*********************************************************}%
+ \Msg{* Hello to the installation of the `fbithesis' package. *}%
+ \Msg{*********************************************************}%
+ \Msg{}%
+ \Msg{***********************}%
+ \Msg{* Generating files... *}%
+ \Msg{***********************}%
+}%
+%
+%% File generation:
+%
+\generate{%
+ \usepreamble\example%
+ \file{example.tex}{\from{fbithesis.dtx}{example}}%
+ \file{exampleaux.tex}{\from{fbithesis.dtx}{exampleaux}}%
+ \usepreamble\driver%
+ \file{fbithesis.drv}{\from{fbithesis.dtx}{driver}}%
+ \usepreamble\config%
+ \file{fbithesis.cfg}{\from{fbithesis.dtx}{config}}%
+ \usedir{tex/latex/misc}%
+ \usepreamble\package%
+ \file{fbithesis.cls}{\from{fbithesis.dtx}{package}}%
+}%
+%
+%% Report:
+%
+\ifToplevel{%
+ \Msg{}%
+ \Msg{**************************************************************}%
+ \Msg{*}%
+\makeatletter\@ifundefined{basedir}{%
+ \Msg{* To finish the installation you have to move the following}%
+ \Msg{* file into a directory searched by LaTeX:}%
+}{%
+ \Msg{* The following file has been automatically created in a}%
+ \Msg{* directory searched by LaTeX:}%
+}\makeatother%
+ \Msg{*}%
+ \Msg{* \space\space fbithesis.cls}%
+\makeatletter\@ifundefined{basedir}{%
+ \Msg{*}%
+ \Msg{* Using a TDS compatible TeX distribution, this would be e.g.}%
+ \Msg{* tex/latex/misc of your main or your local or your private}%
+ \Msg{* texmf path. If you don't know these paths, have a look}%
+ \Msg{* at your `texmf.cnf' or try:}%
+ \Msg{* \space\space kpsexpand \string $TEXMFMAIN}%
+ \Msg{* \space\space kpsexpand \string $TEXMFLOCAL}%
+ \Msg{* \space\space kpsexpand \string $HOMETEXMF}%
+ \Msg{* You may also use another folder at your \string $TEXINPUTS path.}%
+}{}\makeatother%
+ \Msg{*}%
+ \Msg{* To produce the documentation and an example, run the}%
+ \Msg{* following files through LaTeX:}%
+ \Msg{*}%
+ \Msg{* \space\space fbithesis.drv (three times)}%
+ \Msg{* \space\space example.tex}%
+ \Msg{*}%
+ \Msg{* For the legal stuff please have a look at:}%
+ \Msg{*}%
+ \Msg{* \space\space README}%
+ \Msg{*}%
+ \Msg{*}%
+ \Msg{* Happy TeXing!}%
+ \Msg{*}%
+ \Msg{**************************************************************}%
+ \Msg{}%
+}%
+%
+\endbatchfile
diff --git a/macros/latex/contrib/fbithesis/fbithesis.pdf b/macros/latex/contrib/fbithesis/fbithesis.pdf
new file mode 100644
index 0000000000..8a8b307eef
--- /dev/null
+++ b/macros/latex/contrib/fbithesis/fbithesis.pdf
Binary files differ