%//////////////////////////////////////////////////////////////////////////////
%
% Copyright (c) 2007-2019 Daniel Adler <dadler@uni-goettingen.de>,
% Tassilo Philipp <tphilipp@potion-studios.com>
%
% Permission to use, copy, modify, and distribute this software for any
% purpose with or without fee is hereby granted, provided that the above
% copyright notice and this permission notice appear in all copies.
%
% THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
% WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
% MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
% ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
% WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
% ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
% OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
%
%//////////////////////////////////////////////////////////////////////////////
% Set the normal line height for the entire document (some command depend on it).
\newcommand{\normallineheight}{10pt}
\documentclass[\normallineheight,a4paper]{article}
% Value multiplier.
\newlength\mrbraceheight
\newcommand{\tassimultiply}[2]{%
\setlength{\mrbraceheight}{0pt}%
\newcount\qq%
\qq=1 % Subtract 1 by starting at 1 .
\loop%
\addtolength\mrbraceheight{#2}%
\advance\qq by 1%
\ifnum\qq < #1 \repeat%
}
% Conditional if tex4ht is on or not
\newcommand{\ifhtml}[1]{%
\ifx\HCode\Undef \else%
#1%
\fi%
}
\newcommand{\ifnhtml}[1]{%
\ifx\HCode\Undef%
#1%
\fi%
}
\newcommand{\casehtml}[2]{%
\ifx\HCode\Undef%
#2%
\else%
#1%
\fi%
}
% Packages.
\usepackage{a4wide}
\usepackage{multirow}
\usepackage{hhline}
\usepackage{color}
\usepackage{colortbl}
\usepackage{bigdelim}
\usepackage{rotating}
\usepackage{graphicx}
\usepackage{moreverb}
\usepackage{listings}
\usepackage{hyperref}
\ifnhtml{\usepackage{watermark}}
% Define own commands and style.
\newcommand{\dc}{\emph{dyncall}}
\newcommand{\capi}[1]{%
\noindent%
{\tt #1}%
}
\newcommand{\tab}{\indent}
\newcommand{\shell}[1]{\noindent{\tt #1}}
% Multiline table row with left or right curly brace.
%\newcommand{\mrrbrace}[2]{\tassimultiply{#1}{5pt} \multirow{#1}{*}{$\smash{\left. {\vrule height 0pt depth \mrbraceheight width 0pt}\right\}}$#2}}
\newcommand{\mrrbrace}[2]{\rdelim\}{#1}{\normallineheight} \multirow{#1}{*}{#2} }
\newcommand{\mrlbrace}[2]{ \multirow{#1}{*}{#2} \ldelim\{{#1}{\normallineheight}}
\newcommand{\tablewidth}{130mm}
%\setlength{\oddsidemargin}{10mm}
%\setlength{\textwidth}{140mm}
%\setlength{\parindent}{0mm}
%\setlength{\parskip}{1ex plus 0.5ex minus 0.2ex}
\newcommand{\ninety}[1]{\begin{sideways}#1\end{sideways}}
\renewcommand{\paragraph}[1]{%
\par\vspace{12pt}%
\noindent%
\textbf{#1}%
\par%
\vspace{6pt}%
}%
% Set a watermark, but not when running htlatex
\ifnhtml{%
\watermark{%
\begingroup%
\setlength{\unitlength}{1mm}%
\begin{picture}(0,0)(32,300)%
\includegraphics[scale=1.0]{dyncall_watermark}%
\end{picture}%
\endgroup%
}%
}
% Use a sans-serif font.
\renewcommand{\familydefault}{\sfdefault}
\definecolor{defbkgd}{gray}{1.0}
\definecolor{gray1}{gray}{0.9}
\definecolor{gray2}{gray}{0.8}
\definecolor{gray3}{gray}{0.7}
\definecolor{gray4}{gray}{0.6}
\definecolor{lightgreen}{rgb}{0.0,1.0,0.0}
\definecolor{darkgreen}{rgb}{0.0,0.6,0.0}
% Define some column types for our colortables
\usepackage{array}
\newcommand{\cellcA}{}
\newcommand{\cellcB}{}
\newcommand{\cellcC}{}
\newcommand{\cellcD}{}
\newcolumntype{1}{l}
\newcolumntype{2}{l}
\newcolumntype{3}{l}
\newcolumntype{4}{l}
\newcolumntype{5}{r}
\newcolumntype{6}{r}
\newcolumntype{7}{r}
\newcolumntype{8}{r}
\newcolumntype{A}{p{\tablewidth}}
\newcolumntype{B}{p{\tablewidth}}
\newcolumntype{C}{p{\tablewidth}}
\newcolumntype{D}{p{\tablewidth}}
% listings package related settings
\lstset{captionpos=b}
\lstset{frame=tblr}
\lstset{frameround=tttt}
\lstset{basicstyle=\ttfamily}
% text building blocks
\newcommand{\group}[1]{\textit{$<$#1$>$}}
\newcommand{\sigchar}[1]{'{\tt #1}'}
\newcommand{\sigstr}[1]{"{\tt #1}"}
\newcommand{\cenum}[1]{#1}
\newcommand{\product}[1]{\emph{#1}}
% table of contents config
\setcounter{tocdepth}{3}
\begin{document}
% html output options (that need to come after \begin{document})..
\ifhtml{
\Configure{tableofcontents*}{chapter}
}
% main document content -->
\input{manual_title}
\clearpage
\tableofcontents
\clearpage
\ifnhtml{
\listoftables
\listoffigures
\lstlistoflistings
}
\clearpage
\input{manual_motivation}
\input{manual_overview}
\input{manual_build}
\input{manual_bindings}
\input{manual_design}
\input{manual_devel}
\input{manual_epilog}
\appendix
\addtocontents{toc}{\protect\pagebreak}
\input{manual_dyncall_api}
\input{manual_dyncallback_api}
\input{manual_dynload_api}
\input{manual_cc}
\input{manual_literature}
\end{document}