Refactored for a flat buffer friendly, and O(1) or O(n) time complexities.
This commit is contained in:
42
documentation/latex/Makefile
Normal file
42
documentation/latex/Makefile
Normal file
@@ -0,0 +1,42 @@
|
||||
LATEX_CMD?=pdflatex
|
||||
MKIDX_CMD?=makeindex
|
||||
BIBTEX_CMD?=bibtex
|
||||
LATEX_COUNT?=8
|
||||
MANUAL_FILE?=refman
|
||||
|
||||
all: $(MANUAL_FILE).pdf
|
||||
|
||||
pdf: $(MANUAL_FILE).pdf
|
||||
|
||||
$(MANUAL_FILE).pdf: clean $(MANUAL_FILE).tex
|
||||
$(LATEX_CMD) $(MANUAL_FILE) || \
|
||||
if [ $$? != 0 ] ; then \
|
||||
\echo "Please consult $(MANUAL_FILE).log to see the error messages" ; \
|
||||
false; \
|
||||
fi
|
||||
$(MKIDX_CMD) $(MANUAL_FILE).idx
|
||||
$(LATEX_CMD) $(MANUAL_FILE) || \
|
||||
if [ $$? != 0 ] ; then \
|
||||
\echo "Please consult $(MANUAL_FILE).log to see the error messages" ; \
|
||||
false; \
|
||||
fi
|
||||
latex_count=$(LATEX_COUNT) ; \
|
||||
while grep -E -s 'Rerun (LaTeX|to get cross-references right|to get bibliographical references right)' $(MANUAL_FILE).log && [ $$latex_count -gt 0 ] ;\
|
||||
do \
|
||||
echo "Rerunning latex...." ;\
|
||||
$(LATEX_CMD) $(MANUAL_FILE) || \
|
||||
if [ $$? != 0 ] ; then \
|
||||
\echo "Please consult $(MANUAL_FILE).log to see the error messages" ; \
|
||||
false; \
|
||||
fi; \
|
||||
latex_count=`expr $$latex_count - 1` ;\
|
||||
done
|
||||
$(MKIDX_CMD) $(MANUAL_FILE).idx
|
||||
$(LATEX_CMD) $(MANUAL_FILE) || \
|
||||
if [ $$? != 0 ] ; then \
|
||||
\echo "Please consult $(MANUAL_FILE).log to see the error messages" ; \
|
||||
false; \
|
||||
fi
|
||||
|
||||
clean:
|
||||
rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl $(MANUAL_FILE).pdf
|
||||
6
documentation/latex/annotated.tex
Normal file
6
documentation/latex/annotated.tex
Normal file
@@ -0,0 +1,6 @@
|
||||
\doxysection{Class List}
|
||||
Here are the classes, structs, unions and interfaces with brief descriptions:\+\begin{DoxyCompactList}
|
||||
\item\contentsline{section}{\doxymbox{\hyperlink{struct_edge}{Edge}} }{\pageref{struct_edge}}{}
|
||||
\item\contentsline{section}{\doxymbox{\hyperlink{class_graph}{Graph}} }{\pageref{class_graph}}{}
|
||||
\item\contentsline{section}{\doxymbox{\hyperlink{struct_point}{Point}} }{\pageref{struct_point}}{}
|
||||
\end{DoxyCompactList}
|
||||
95
documentation/latex/class_graph.tex
Normal file
95
documentation/latex/class_graph.tex
Normal file
@@ -0,0 +1,95 @@
|
||||
\doxysection{Graph Class Reference}
|
||||
\hypertarget{class_graph}{}\label{class_graph}\index{Graph@{Graph}}
|
||||
\doxysubsubsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}} (size\+\_\+t max\+Points, size\+\_\+t max\+Edges) noexcept
|
||||
\item
|
||||
\doxymbox{\hyperlink{class_graph_a902c5b3eacb66d60752525ab23297a95}{\texorpdfstring{$\sim$}{\string~}\+Graph}} ()
|
||||
\item
|
||||
\doxymbox{\hyperlink{class_graph_a61af63f3d00e297e91772b482de3dc74}{Graph}} (\doxymbox{\hyperlink{class_graph}{Graph}} \&\&other) noexcept
|
||||
\item
|
||||
\doxymbox{\hyperlink{struct_edge}{Edge}} \texorpdfstring{$\ast$}{*} \doxymbox{\hyperlink{class_graph_a81382d6a8dffca97d8e3c8e00faf7cf6}{get\+\_\+p\+\_\+edges}} (int p\+\_\+index) noexcept
|
||||
\item
|
||||
void \doxymbox{\hyperlink{class_graph_af96ec89a386c4b1f8e74619bc7b028cc}{add\+\_\+edge}} (int start\+\_\+point\+\_\+index, int end\+\_\+point\+\_\+index) noexcept
|
||||
\item
|
||||
\Hypertarget{class_graph_a2f9dee7e816e54dfd01e1e3a6183dc56}\label{class_graph_a2f9dee7e816e54dfd01e1e3a6183dc56}
|
||||
{\bfseries Graph} (const \doxymbox{\hyperlink{class_graph}{Graph}} \&)=delete
|
||||
\item
|
||||
\Hypertarget{class_graph_a05cae32d4ce8cf857a1c8d35a32024cd}\label{class_graph_a05cae32d4ce8cf857a1c8d35a32024cd}
|
||||
\doxymbox{\hyperlink{class_graph}{Graph}} \& {\bfseries operator=} (const \doxymbox{\hyperlink{class_graph}{Graph}} \&)=delete
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\label{doc-constructors}
|
||||
\Hypertarget{class_graph_doc-constructors}
|
||||
\doxysubsection{Constructor \& Destructor Documentation}
|
||||
\Hypertarget{class_graph_a230f67d1097f0a88f1cded9be1040ce9}\index{Graph@{Graph}!Graph@{Graph}}
|
||||
\index{Graph@{Graph}!Graph@{Graph}}
|
||||
\doxysubsubsection{\texorpdfstring{Graph()}{Graph()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
||||
{\footnotesize\ttfamily \label{class_graph_a230f67d1097f0a88f1cded9be1040ce9}
|
||||
Graph::\+\+Graph (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{max\+\_\+points}{, }\item[{size\+\_\+t}]{max\+\_\+edges}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [noexcept]}}
|
||||
|
||||
Constructor Creates a new \doxylink{class_graph}{Graph} object
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em max\+\_\+points} & :\+ Maximum number of points in the \doxylink{class_graph}{Graph} \\
|
||||
\hline
|
||||
{\em max\+\_\+edges} & :\+ Maximum number of edges in the GRAPH (not the point) \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\Hypertarget{class_graph_a902c5b3eacb66d60752525ab23297a95}\index{Graph@{Graph}!````~Graph@{\texorpdfstring{$\sim$}{\string~}Graph}}
|
||||
\index{````~Graph@{\texorpdfstring{$\sim$}{\string~}Graph}!Graph@{Graph}}
|
||||
\doxysubsubsection{\texorpdfstring{\texorpdfstring{$\sim$}{\string~}Graph()}{\string~Graph()}}
|
||||
{\footnotesize\ttfamily \label{class_graph_a902c5b3eacb66d60752525ab23297a95}
|
||||
Graph::\+\texorpdfstring{$\sim$}{\string~}\+Graph (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
|
||||
|
||||
Deconstruction NOTE on the \textquotesingle{}\doxylink{class_graph_a902c5b3eacb66d60752525ab23297a95}{\texorpdfstring{$\sim$}{\string~}\+Graph()}\textquotesingle{}:\+ The \texorpdfstring{$\sim$}{\string~} flags this block as a deconstructor. It makes it so this runs before the object is removed from memory preventing memory leaks Find the memory buffers pointed to by all\+\_\+points and all\+\_\+edges, and mark that memory as available for other programs to use. \Hypertarget{class_graph_a61af63f3d00e297e91772b482de3dc74}\index{Graph@{Graph}!Graph@{Graph}}
|
||||
\index{Graph@{Graph}!Graph@{Graph}}
|
||||
\doxysubsubsection{\texorpdfstring{Graph()}{Graph()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
||||
{\footnotesize\ttfamily \label{class_graph_a61af63f3d00e297e91772b482de3dc74}
|
||||
Graph::\+\+Graph (\begin{DoxyParamCaption}\item[{\doxymbox{\hyperlink{class_graph}{Graph}} \&\&}]{other}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [noexcept]}}
|
||||
|
||||
Move Constructor Instructions to move the current graph object from one memory location to another without copying
|
||||
|
||||
\label{doc-func-members}
|
||||
\Hypertarget{class_graph_doc-func-members}
|
||||
\doxysubsection{Member Function Documentation}
|
||||
\Hypertarget{class_graph_af96ec89a386c4b1f8e74619bc7b028cc}\index{Graph@{Graph}!add\_edge@{add\_edge}}
|
||||
\index{add\_edge@{add\_edge}!Graph@{Graph}}
|
||||
\doxysubsubsection{\texorpdfstring{add\_edge()}{add\_edge()}}
|
||||
{\footnotesize\ttfamily \label{class_graph_af96ec89a386c4b1f8e74619bc7b028cc}
|
||||
void Graph::\+add\+\_\+edge (\begin{DoxyParamCaption}\item[{int}]{start\+\_\+point\+\_\+index}{, }\item[{int}]{end\+\_\+point\+\_\+index}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [noexcept]}}
|
||||
|
||||
add\+\_\+edge Adds an edge between two points
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em start\+\_\+point\+\_\+index} & :\+ the index of the starting point \\
|
||||
\hline
|
||||
{\em end\+\_\+point\+\_\+index} & :\+ the index of the ending point \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\Hypertarget{class_graph_a81382d6a8dffca97d8e3c8e00faf7cf6}\index{Graph@{Graph}!get\_p\_edges@{get\_p\_edges}}
|
||||
\index{get\_p\_edges@{get\_p\_edges}!Graph@{Graph}}
|
||||
\doxysubsubsection{\texorpdfstring{get\_p\_edges()}{get\_p\_edges()}}
|
||||
{\footnotesize\ttfamily \label{class_graph_a81382d6a8dffca97d8e3c8e00faf7cf6}
|
||||
\doxymbox{\hyperlink{struct_edge}{Edge}} \texorpdfstring{$\ast$}{*} Graph::\+get\+\_\+p\+\_\+edges (\begin{DoxyParamCaption}\item[{int}]{p\+\_\+index}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [noexcept]}}
|
||||
|
||||
Getter Function:\+ get\+\_\+p\+\_\+edges Gets the address of the first edge for \doxylink{struct_point}{Point} P at index p\+\_\+index
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em p\+\_\+index} & :\+ The index (int) of the point \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
Edge\texorpdfstring{$\ast$}{*} :\+ the address of the first edge for p\+\_\+index
|
||||
\end{DoxyReturn}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files:\+\begin{DoxyCompactItemize}
|
||||
\item
|
||||
graph.\+h\item
|
||||
Graph.\+cpp\end{DoxyCompactItemize}
|
||||
898
documentation/latex/doxygen.sty
Normal file
898
documentation/latex/doxygen.sty
Normal file
@@ -0,0 +1,898 @@
|
||||
\NeedsTeXFormat{LaTeX2e}
|
||||
\ProvidesPackage{doxygen}
|
||||
|
||||
% Packages used by this style file
|
||||
\RequirePackage{alltt}
|
||||
\RequirePackage{array}
|
||||
\RequirePackage{calc}
|
||||
\RequirePackage{float}
|
||||
\RequirePackage{ifthen}
|
||||
\RequirePackage{verbatim}
|
||||
\RequirePackage{varwidth}
|
||||
\RequirePackage[table]{xcolor}
|
||||
\RequirePackage{longtable}
|
||||
\RequirePackage{xltabular}
|
||||
\RequirePackage{tabularray}
|
||||
\ExplSyntaxOn
|
||||
\IfPackageAtLeastTF{tabularray}{2025-03-11}
|
||||
{
|
||||
\IfPackageAtLeastTF{tabularray}{2025-03-12}
|
||||
{
|
||||
%newer version, do nothing
|
||||
}
|
||||
{
|
||||
%the required version
|
||||
\bool_gset_false:N \g__tblr_use_intarray_bool
|
||||
}
|
||||
}
|
||||
{
|
||||
%older version, do nothing
|
||||
}
|
||||
\ExplSyntaxOff
|
||||
\UseTblrLibrary{varwidth}
|
||||
\ExplSyntaxOn
|
||||
\int_new:N \g__doxy_nohyper_int
|
||||
\AtBeginDocument
|
||||
{
|
||||
\IfPackageAtLeastTF{tabularray}{2024-02-16}
|
||||
{
|
||||
\renewenvironment{tblrNoHyper}
|
||||
{
|
||||
\int_compare:nNnT {\g__doxy_nohyper_int} = {0} {\begin{NoHyper}}
|
||||
\int_gincr:N \g__doxy_nohyper_int
|
||||
}
|
||||
{
|
||||
\int_gdecr:N \g__doxy_nohyper_int
|
||||
\int_compare:nNnT {\g__doxy_nohyper_int} = {0} {\end{NoHyper}}
|
||||
}
|
||||
}
|
||||
{
|
||||
%older version, doesn't provide tblrNoHyper
|
||||
}
|
||||
}
|
||||
\ExplSyntaxOff
|
||||
|
||||
\ExplSyntaxOn
|
||||
\dim_new:N \doxytablewidth
|
||||
\NewDocumentCommand \doxycalculatetablewidth {}
|
||||
{
|
||||
\cs_set_protected:Nn \__tblr_build_whole:
|
||||
{
|
||||
\__tblr_get_table_width:
|
||||
\dim_gset:Nn \doxytablewidth { \tablewidth }
|
||||
}
|
||||
}
|
||||
\ExplSyntaxOff
|
||||
|
||||
\RequirePackage{fancyvrb}
|
||||
\RequirePackage{tabularx}
|
||||
\RequirePackage{multicol}
|
||||
\RequirePackage{multirow}
|
||||
\RequirePackage{hanging}
|
||||
\RequirePackage{ifpdf}
|
||||
\RequirePackage{adjustbox}
|
||||
\RequirePackage{amssymb}
|
||||
\RequirePackage{stackengine}
|
||||
\RequirePackage{enumitem}
|
||||
\RequirePackage{alphalph}
|
||||
\RequirePackage[normalem]{ulem} % for strikeout, but don't modify emphasis
|
||||
|
||||
%---------- Internal commands used in this style file ----------------
|
||||
|
||||
\newcommand{\ensurespace}[1]{%
|
||||
\begingroup%
|
||||
\setlength{\dimen@}{#1}%
|
||||
\vskip\z@\@plus\dimen@%
|
||||
\penalty -100\vskip\z@\@plus -\dimen@%
|
||||
\vskip\dimen@%
|
||||
\penalty 9999%
|
||||
\vskip -\dimen@%
|
||||
\vskip\z@skip% hide the previous |\vskip| from |\addvspace|
|
||||
\endgroup%
|
||||
}
|
||||
|
||||
\newcommand{\DoxyHorRuler}[1]{%
|
||||
\setlength{\parskip}{0ex plus 0ex minus 0ex}%
|
||||
\ifthenelse{#1=0}%
|
||||
{%
|
||||
\hrule%
|
||||
}%
|
||||
{%
|
||||
\hrulefilll%
|
||||
}%
|
||||
}
|
||||
\newcommand{\DoxyLabelFont}{}
|
||||
\newcommand{\entrylabel}[1]{%
|
||||
{%
|
||||
\parbox[b]{\labelwidth-4pt}{%
|
||||
\makebox[0pt][l]{\DoxyLabelFont#1}%
|
||||
\vspace{1.5\baselineskip}%
|
||||
}%
|
||||
}%
|
||||
}
|
||||
|
||||
\newenvironment{DoxyDesc}[1]{%
|
||||
\ensurespace{4\baselineskip}%
|
||||
\begin{list}{}{%
|
||||
\settowidth{\labelwidth}{20pt}%
|
||||
%\setlength{\parsep}{0pt}%
|
||||
\setlength{\itemsep}{0pt}%
|
||||
\setlength{\leftmargin}{\labelwidth+\labelsep}%
|
||||
\renewcommand{\makelabel}{\entrylabel}%
|
||||
}%
|
||||
\item[#1]%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
\newsavebox{\xrefbox}
|
||||
\newlength{\xreflength}
|
||||
\newcommand{\xreflabel}[1]{%
|
||||
\sbox{\xrefbox}{#1}%
|
||||
\setlength{\xreflength}{\wd\xrefbox}%
|
||||
\ifthenelse{\xreflength>\labelwidth}{%
|
||||
\begin{minipage}{\textwidth}%
|
||||
\setlength{\parindent}{0pt}%
|
||||
\hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
|
||||
\end{minipage}%
|
||||
}{%
|
||||
\parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
|
||||
}%
|
||||
}
|
||||
|
||||
%---------- Commands used by doxygen LaTeX output generator ----------
|
||||
|
||||
% Used by <pre> ... </pre>
|
||||
\newenvironment{DoxyPre}{%
|
||||
\small%
|
||||
\begin{alltt}%
|
||||
}{%
|
||||
\end{alltt}%
|
||||
\normalsize%
|
||||
}
|
||||
% Necessary for redefining not defined characters, i.e. "Replacement Character" in tex output.
|
||||
\newlength{\CodeWidthChar}
|
||||
\newlength{\CodeHeightChar}
|
||||
\settowidth{\CodeWidthChar}{?}
|
||||
\settoheight{\CodeHeightChar}{?}
|
||||
% Necessary for hanging indent
|
||||
\newlength{\DoxyCodeWidth}
|
||||
|
||||
\newcommand\DoxyCodeLine[1]{
|
||||
\ifthenelse{\equal{\detokenize{#1}}{}}
|
||||
{
|
||||
\vspace*{\baselineskip}
|
||||
}
|
||||
{
|
||||
\hangpara{\DoxyCodeWidth}{1}{#1}\par
|
||||
}
|
||||
}
|
||||
|
||||
\newcommand\NiceSpace{%
|
||||
\discretionary{}{\kern\fontdimen2\font}{\kern\fontdimen2\font}%
|
||||
}
|
||||
|
||||
% Used by @code ... @endcode
|
||||
\newenvironment{DoxyCode}[1]{%
|
||||
\par%
|
||||
\vspace{2pt}%
|
||||
\scriptsize%
|
||||
\normalfont\ttfamily%
|
||||
\rightskip0pt plus 1fil%
|
||||
\settowidth{\DoxyCodeWidth}{000000}%
|
||||
\settowidth{\CodeWidthChar}{?}%
|
||||
\settoheight{\CodeHeightChar}{?}%
|
||||
\setlength{\parskip}{0ex plus 0ex minus 0ex}%
|
||||
\ifthenelse{\equal{#1}{0}}%
|
||||
{%
|
||||
{\lccode`~32 \lowercase{\global\let~}\NiceSpace}\obeyspaces%
|
||||
}%
|
||||
{%
|
||||
{\lccode`~32 \lowercase{\global\let~}\relax}\obeyspaces%
|
||||
}%
|
||||
\vspace{2pt}%
|
||||
}{%
|
||||
\normalfont%
|
||||
\normalsize%
|
||||
\settowidth{\CodeWidthChar}{?}%
|
||||
\settoheight{\CodeHeightChar}{?}%
|
||||
}
|
||||
|
||||
\newlength{\ttcharwidth}%
|
||||
|
||||
\newenvironment{DoxyEmbeddedDoc}[1][4]{%
|
||||
\begingroup%
|
||||
\scriptsize%
|
||||
\settowidth{\ttcharwidth}{\scriptsize\texttt{M}}%
|
||||
\setlength{\leftskip}{#1\ttcharwidth}%
|
||||
\setlength{\@totalleftmargin}{#1\ttcharwidth}%
|
||||
\addtolength{\linewidth}{-#1\ttcharwidth}%
|
||||
\parshape 0 %
|
||||
\noindent\ignorespaces%
|
||||
}{%
|
||||
\par\endgroup
|
||||
}
|
||||
|
||||
% Redefining not defined characters, i.e. "Replacement Character" in tex output.
|
||||
\def\ucr{\adjustbox{width=\CodeWidthChar,height=\CodeHeightChar}{\stackinset{c}{}{c}{-.2pt}{%
|
||||
\textcolor{white}{\sffamily\bfseries\small ?}}{%
|
||||
\rotatebox{45}{$\blacksquare$}}}}
|
||||
|
||||
% Used by @example, @include, @includelineno and @dontinclude
|
||||
\newenvironment{DoxyCodeInclude}[1]{%
|
||||
\DoxyCode{#1}%
|
||||
}{%
|
||||
\endDoxyCode%
|
||||
}
|
||||
|
||||
% Used by @verbatim ... @endverbatim
|
||||
\newenvironment{DoxyVerb}{%
|
||||
\par%
|
||||
\footnotesize%
|
||||
\verbatim%
|
||||
}{%
|
||||
\endverbatim%
|
||||
\normalsize%
|
||||
}
|
||||
|
||||
% Used by @verbinclude
|
||||
\newenvironment{DoxyVerbInclude}{%
|
||||
\DoxyVerb%
|
||||
}{%
|
||||
\endDoxyVerb%
|
||||
}
|
||||
|
||||
% Used by numbered lists (using '-#' or <ol> ... </ol>)
|
||||
\setlistdepth{12}
|
||||
\newlist{DoxyEnumerate}{enumerate}{12}
|
||||
\setlist[DoxyEnumerate,1]{label=\arabic*.}
|
||||
\setlist[DoxyEnumerate,2]{label=(\enumalphalphcnt*)}
|
||||
\setlist[DoxyEnumerate,3]{label=\roman*.}
|
||||
\setlist[DoxyEnumerate,4]{label=\enumAlphAlphcnt*.}
|
||||
\setlist[DoxyEnumerate,5]{label=\arabic*.}
|
||||
\setlist[DoxyEnumerate,6]{label=(\enumalphalphcnt*)}
|
||||
\setlist[DoxyEnumerate,7]{label=\roman*.}
|
||||
\setlist[DoxyEnumerate,8]{label=\enumAlphAlphcnt*.}
|
||||
\setlist[DoxyEnumerate,9]{label=\arabic*.}
|
||||
\setlist[DoxyEnumerate,10]{label=(\enumalphalphcnt*)}
|
||||
\setlist[DoxyEnumerate,11]{label=\roman*.}
|
||||
\setlist[DoxyEnumerate,12]{label=\enumAlphAlphcnt*.}
|
||||
|
||||
% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)
|
||||
\setlistdepth{12}
|
||||
\newlist{DoxyItemize}{itemize}{12}
|
||||
\setlist[DoxyItemize]{label=\textperiodcentered}
|
||||
|
||||
\setlist[DoxyItemize,1]{label=\textbullet}
|
||||
\setlist[DoxyItemize,2]{label=\normalfont\bfseries \textendash}
|
||||
\setlist[DoxyItemize,3]{label=\textasteriskcentered}
|
||||
\setlist[DoxyItemize,4]{label=\textperiodcentered}
|
||||
|
||||
% Used for check boxes
|
||||
\newcommand{\DoxyUnchecked}{$\square$}
|
||||
\newcommand{\DoxyChecked}{\rlap{\raisebox{0.3ex}{\hspace{0.4ex}\tiny \checkmark}}$\square$}
|
||||
|
||||
% Used by description lists (using <dl> ... </dl>)
|
||||
\newenvironment{DoxyDescription}{%
|
||||
\description%
|
||||
}{%
|
||||
\enddescription%
|
||||
}
|
||||
|
||||
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
|
||||
% (only if caption is specified)
|
||||
\newenvironment{DoxyImage}{%
|
||||
\begin{figure}[H]%
|
||||
\centering%
|
||||
}{%
|
||||
\end{figure}%
|
||||
}
|
||||
|
||||
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
|
||||
% (only if no caption is specified)
|
||||
\newenvironment{DoxyImageNoCaption}{%
|
||||
\begin{center}%
|
||||
}{%
|
||||
\end{center}%
|
||||
}
|
||||
|
||||
% Used by @image
|
||||
% (only if inline is specified)
|
||||
\newenvironment{DoxyInlineImage}{%
|
||||
}{%
|
||||
}
|
||||
|
||||
% Used by @attention
|
||||
\newenvironment{DoxyAttention}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @important
|
||||
\newenvironment{DoxyImportant}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @author and @authors
|
||||
\newenvironment{DoxyAuthor}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @date
|
||||
\newenvironment{DoxyDate}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @invariant
|
||||
\newenvironment{DoxyInvariant}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @note
|
||||
\newenvironment{DoxyNote}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @post
|
||||
\newenvironment{DoxyPostcond}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @pre
|
||||
\newenvironment{DoxyPrecond}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @copyright
|
||||
\newenvironment{DoxyCopyright}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @remark
|
||||
\newenvironment{DoxyRemark}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @return and @returns
|
||||
\newenvironment{DoxyReturn}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @since
|
||||
\newenvironment{DoxySince}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @see
|
||||
\newenvironment{DoxySeeAlso}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @version
|
||||
\newenvironment{DoxyVersion}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @warning
|
||||
\newenvironment{DoxyWarning}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @par and @paragraph
|
||||
\newenvironment{DoxyParagraph}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% define a theme for the DoxyTable environment (without caption)
|
||||
\NewTblrTheme{DoxyTableBareTheme}{
|
||||
\DefTblrTemplate{firsthead}{default}{}%
|
||||
\DefTblrTemplate{middlehead, lasthead}{default}{}%
|
||||
\DefTblrTemplate{contfoot-text}{default}{}%
|
||||
}
|
||||
|
||||
% define a theme for the DoxyTable environment (with caption)
|
||||
\NewTblrTheme{DoxyTableCaptionTheme}{
|
||||
\SetTblrStyle{firsthead}{font=\bfseries}{}%
|
||||
\DefTblrTemplate{middlehead, lasthead}{default}{}%
|
||||
\DefTblrTemplate{contfoot-text}{default}{}%
|
||||
}
|
||||
|
||||
% Define a table environment to use with Doxygen
|
||||
% parameters:
|
||||
% - #1: number of columns
|
||||
% - #2: table caption (can be empty)
|
||||
% - #3: label to refer to the table (can be empty)
|
||||
% - #4: 1=table has a heading row, 0=no heading row
|
||||
% - #5: body of the table (part between start{DoxyTable}..\end{DoxyTable}
|
||||
\NewDocumentEnvironment{DoxyTable}{m +m m m +b}{%
|
||||
\par%
|
||||
\def\hascaption{#2}%
|
||||
\def\haslabel{#3}%
|
||||
\ifx\hascaption\empty% if caption is empty
|
||||
\SetTblrOuter[longtblr]{theme=DoxyTableBareTheme,entry=none}% table without caption or label
|
||||
\else% caption not empty
|
||||
\ifx\haslabel\empty% if label is empty
|
||||
\SetTblrOuter[longtblr]{theme=DoxyTableCaptionTheme,caption={#2}}% set table caption
|
||||
\else% label not empty
|
||||
\SetTblrOuter[longtblr]{theme=DoxyTableCaptionTheme,caption={#2},label={#3}}% set table caption and label
|
||||
\fi%
|
||||
\fi%
|
||||
\begingroup
|
||||
\doxycalculatetablewidth
|
||||
\sbox0{% first render the table in a savebox to calculate the width of the table which will be stored in \doxytablewidth
|
||||
\begin{tblr}{hlines,vlines,measure=vbox,colspec={*{#1}{l}}}%
|
||||
#5
|
||||
\end{tblr}%
|
||||
}% end of sbox0
|
||||
\endgroup
|
||||
\ifdim\doxytablewidth>\linewidth% use flexible columns
|
||||
% now render the table for real
|
||||
\begin{longtblr}{hlines,vlines,% automatically set horizontal and vertical cell lines
|
||||
measure=vbox,% needed to allow nested lists and tables
|
||||
colspec={*{#1}{X[-1]}},% set column type for all columns
|
||||
rowhead=#4} % set which row is the header (0=disable, 1=enable)
|
||||
#5
|
||||
\end{longtblr}%
|
||||
\else% use fixed left aligned columns
|
||||
% now render the table for real
|
||||
\begin{longtblr}{hlines,vlines,% automatically set horizontal and vertical cell lines
|
||||
measure=vbox,% needed to allow nested lists and tables
|
||||
colspec={*{#1}{l}},% set column type for all columns
|
||||
rowhead=#4} % set which row is the header (0=disable, 1=enable)
|
||||
#5
|
||||
\end{longtblr}%
|
||||
\fi%
|
||||
}{% no end marker needed anymore
|
||||
}%
|
||||
|
||||
% Define a nested table environment to use with Doxygen
|
||||
% parameters:
|
||||
% - #1: number of columns
|
||||
% - #2: 1=table has a heading row, 0=no heading row
|
||||
\NewDocumentEnvironment{DoxyTableNested}{m m +b}{%
|
||||
\begingroup
|
||||
\doxycalculatetablewidth
|
||||
\sbox0{% first render the table in a savebox to calculate the width of the table which will be stored in \doxytablewidth
|
||||
\begin{tblr}{hlines,vlines,measure=vbox,colspec={*{#1}{l}}}%
|
||||
#3
|
||||
\end{tblr}%
|
||||
}% end of sbox0
|
||||
\endgroup
|
||||
\ifdim\doxytablewidth>\linewidth% use flexible columns
|
||||
% now render the table for real
|
||||
\begin{tblr}{hlines,vlines,% automatically set horizontal and vertical cell lines
|
||||
measure=vbox,% needed to allow nested lists and tables
|
||||
colspec={*{#1}{X[-1]}},% set column type for all columns
|
||||
rowhead=#2} % set which row is the header (0=disable, 1=enable)
|
||||
#3
|
||||
\end{tblr}%
|
||||
\else% use fixed left aligned columns
|
||||
% now render the table for real
|
||||
\begin{tblr}{hlines,vlines,% automatically set horizontal and vertical cell lines
|
||||
measure=vbox,% needed to allow nested lists and tables
|
||||
colspec={*{#1}{l}},% set column type for all columns
|
||||
rowhead=#2} % set which row is the header (0=disable, 1=enable)
|
||||
#3
|
||||
\end{tblr}%
|
||||
\fi%
|
||||
}{% no end marker needed anymore
|
||||
}%
|
||||
|
||||
% Defines a parameter table
|
||||
% Arguments:
|
||||
% #1: Number of columns
|
||||
% #2: Initial format for tblr, i.e. format except for last column
|
||||
% #3: Title of the table e.g. Params, Enumerator
|
||||
% #4: Body
|
||||
\NewDocumentCommand{\DoxyParamTable}{m m +m +m}{%
|
||||
\SetTblrOuter[longtblr]{theme=DoxyTableBareTheme,entry=none}% set table caption and label
|
||||
\begingroup
|
||||
\doxycalculatetablewidth
|
||||
\sbox0{% render table off-screen first to capture its width in \doxytablewidth
|
||||
\begin{tblr}{measure=vbox,colspec={*{#1}{|l}|}}%
|
||||
\SetCell[c=#1]{l} \tf{#3} \\[1ex]%
|
||||
\hline%
|
||||
#4
|
||||
\end{tblr}%
|
||||
}%
|
||||
\endgroup
|
||||
\ifdim\doxytablewidth>\linewidth% use flexible columns
|
||||
\edef\DoxyTableColSpec{#2X[-1]}%
|
||||
\else%
|
||||
\edef\DoxyTableColSpec{#2l}%
|
||||
\fi%
|
||||
\expanded{\noexpand\begin{longtblr}[l,theme=DoxyTableBareTheme]%
|
||||
{vline{1-Z}={2-Z}{solid},% show vertical lines for all rows except the first
|
||||
measure=vbox,% needed to allow nested lists and tables
|
||||
colspec=\DoxyTableColSpec}}% set column type for all columns
|
||||
\SetCell[c=#1]{l} \tf{#3} \\\nopagebreak%
|
||||
\hline\nopagebreak%
|
||||
#4
|
||||
\end{longtblr}%
|
||||
\par\addvspace{6pt}%
|
||||
}
|
||||
|
||||
|
||||
% Used by parameter lists
|
||||
\NewDocumentEnvironment{DoxyParams}{O{0} m +b}{%
|
||||
\par
|
||||
\ifnum#1>1
|
||||
\DoxyParamTable{4}{lll}{#2}{#3}
|
||||
\else
|
||||
\ifnum#1>0
|
||||
\DoxyParamTable{3}{ll}{#2}{#3}
|
||||
\else
|
||||
\DoxyParamTable{2}{l}{#2}{#3}
|
||||
\fi
|
||||
\fi
|
||||
}{}
|
||||
|
||||
|
||||
% Used for fields of simple structs
|
||||
\NewDocumentEnvironment{DoxyFields}{m +b}{%
|
||||
\par
|
||||
\DoxyParamTable{3}{rl}{#1}{#2}
|
||||
}{}
|
||||
|
||||
|
||||
% Used for fields simple class style enums
|
||||
\NewDocumentEnvironment{DoxyEnumFields}{O{2} m +b}{%
|
||||
\par
|
||||
\ifnum#1>2
|
||||
\DoxyParamTable{3}{lr}{#2}{#3}
|
||||
\else
|
||||
\DoxyParamTable{2}{l}{#2}{#3}
|
||||
\fi
|
||||
}{}
|
||||
|
||||
\NewDocumentCommand{\tf}{m}{%
|
||||
\hspace{-\tabcolsep}\bfseries #1%
|
||||
}
|
||||
|
||||
% Used for parameters within a detailed function description
|
||||
\newenvironment{DoxyParamCaption}{%
|
||||
\renewcommand{\item}[3][]{\\ \hspace*{2.0cm} ##1 {\em ##2}##3}%
|
||||
}{%
|
||||
}
|
||||
|
||||
% Used by return value lists
|
||||
\NewDocumentEnvironment{DoxyRetVals}{m +b}{%
|
||||
\par
|
||||
\DoxyParamTable{2}{r}{#1}{#2}
|
||||
}{}
|
||||
|
||||
% Used by exception lists
|
||||
\NewDocumentEnvironment{DoxyExceptions}{m +b}{%
|
||||
\par
|
||||
\DoxyParamTable{2}{r}{#1}{#2}
|
||||
}{}
|
||||
|
||||
% Used by template parameter lists
|
||||
\NewDocumentEnvironment{DoxyTemplParams}{m +b}{%
|
||||
\par
|
||||
\DoxyParamTable{2}{r}{#1}{#2}
|
||||
}{}
|
||||
|
||||
% Used for member lists
|
||||
\newenvironment{DoxyCompactItemize}{%
|
||||
\begin{itemize}%
|
||||
\setlength{\itemsep}{-3pt}%
|
||||
\setlength{\parsep}{0pt}%
|
||||
\setlength{\topsep}{0pt}%
|
||||
\setlength{\partopsep}{0pt}%
|
||||
}{%
|
||||
\end{itemize}%
|
||||
}
|
||||
|
||||
% Used for member descriptions
|
||||
\newenvironment{DoxyCompactList}{%
|
||||
\begin{list}{}{%
|
||||
\setlength{\leftmargin}{0.5cm}%
|
||||
\setlength{\itemsep}{0pt}%
|
||||
\setlength{\parsep}{0pt}%
|
||||
\setlength{\topsep}{0pt}%
|
||||
\renewcommand{\makelabel}{\hfill}%
|
||||
}%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used for reference lists (@bug, @deprecated, @todo, etc.)
|
||||
\newenvironment{DoxyRefList}{%
|
||||
\begin{list}{}{%
|
||||
\setlength{\labelwidth}{10pt}%
|
||||
\setlength{\leftmargin}{\labelwidth}%
|
||||
\addtolength{\leftmargin}{\labelsep}%
|
||||
\renewcommand{\makelabel}{\xreflabel}%
|
||||
}%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used by @bug, @deprecated, @todo, etc.
|
||||
\newenvironment{DoxyRefDesc}[1]{%
|
||||
\begin{list}{}{%
|
||||
\renewcommand\makelabel[1]{\textbf{##1}}%
|
||||
\settowidth\labelwidth{\makelabel{#1}}%
|
||||
\setlength\leftmargin{\labelwidth+\labelsep}%
|
||||
}%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used by parameter lists and simple sections
|
||||
\newenvironment{Desc}
|
||||
{\begin{list}{}{%
|
||||
\settowidth{\labelwidth}{20pt}%
|
||||
\setlength{\parsep}{0pt}%
|
||||
\setlength{\itemsep}{0pt}%
|
||||
\setlength{\leftmargin}{\labelwidth+\labelsep}%
|
||||
\renewcommand{\makelabel}{\entrylabel}%
|
||||
}
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used by tables
|
||||
\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}%
|
||||
|
||||
% Used for member group headers
|
||||
\newenvironment{Indent}{%
|
||||
\begin{list}{}{%
|
||||
\setlength{\leftmargin}{0.5cm}%
|
||||
}%
|
||||
\item[]\ignorespaces%
|
||||
}{%
|
||||
\unskip%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
\newsavebox{\doxymboxbox}
|
||||
\newlength{\doxymboxlength}
|
||||
\newcommand{\doxymbox}[1]{%
|
||||
\sbox{\doxymboxbox}{#1}%
|
||||
\setlength{\doxymboxlength}{\wd\doxymboxbox}%
|
||||
\ifthenelse{\doxymboxlength>\linewidth}{%
|
||||
#1%
|
||||
}{%
|
||||
\mbox{#1}%
|
||||
}%
|
||||
}
|
||||
|
||||
% Used when hyperlinks are turned on
|
||||
\newcommand{\doxylink}[2]{%
|
||||
\doxymbox{\hyperlink{#1}{#2}}%
|
||||
}
|
||||
|
||||
% Used for the cite command
|
||||
\newcommand{\DoxyCite}[3]{%
|
||||
\ifthenelse{#3=1}% 1 with square parenthesis
|
||||
{
|
||||
\ifthenelse{\equal{#2}{number}}%
|
||||
{ \cite{#1} }%
|
||||
{%
|
||||
\ifthenelse{\equal{#2}{shortauthor}}%
|
||||
{ \citetext{\citeauthor{#1}} }%
|
||||
{%
|
||||
\ifthenelse{\equal{#2}{year}}%
|
||||
{ \citeyearpar{#1} }%
|
||||
{}%
|
||||
}%
|
||||
}%
|
||||
}%
|
||||
{%
|
||||
\ifthenelse{\equal{#2}{number}}%
|
||||
{ \citealp{#1} }%
|
||||
{%
|
||||
\ifthenelse{\equal{#2}{shortauthor}}%
|
||||
{ \citeauthor{#1} }%
|
||||
{%
|
||||
\ifthenelse{\equal{#2}{year}}%
|
||||
{ \citeyear{#1} }%
|
||||
{}%
|
||||
}%
|
||||
}%
|
||||
}%
|
||||
}
|
||||
|
||||
% Used when hyperlinks are turned on
|
||||
% Third argument is the SectionType, see the doxygen internal
|
||||
% documentation for the values (relevant: Page ... Subsubsection).
|
||||
\newcommand{\doxysectlink}[3]{%
|
||||
\doxymbox{\hyperlink{#1}{#2}}%
|
||||
}
|
||||
% Used when hyperlinks are turned off
|
||||
\newcommand{\doxyref}[3]{%
|
||||
\textbf{#1} (\textnormal{#2}\,\pageref{#3})%
|
||||
}
|
||||
|
||||
% Used when hyperlinks are turned off
|
||||
% Fourth argument is the SectionType, see the doxygen internal
|
||||
% documentation for the values (relevant: Page ... Subsubsection).
|
||||
\newcommand{\doxysectref}[4]{%
|
||||
\textbf{#1} (\textnormal{#2}\,\pageref{#3})%
|
||||
}
|
||||
|
||||
% Used to link to a table when hyperlinks are turned on
|
||||
\newcommand{\doxytablelink}[2]{%
|
||||
\ref{#1}%
|
||||
}
|
||||
|
||||
% Used to link to a table when hyperlinks are turned off
|
||||
\newcommand{\doxytableref}[3]{%
|
||||
\ref{#3}%
|
||||
}
|
||||
|
||||
% Used by @addindex
|
||||
\newcommand{\lcurly}{\{}
|
||||
\newcommand{\rcurly}{\}}
|
||||
|
||||
% Colors used for syntax highlighting
|
||||
\definecolor{comment}{rgb}{0.5,0.0,0.0}
|
||||
\definecolor{keyword}{rgb}{0.0,0.5,0.0}
|
||||
\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}
|
||||
\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}
|
||||
\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}
|
||||
\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}
|
||||
\definecolor{charliteral}{rgb}{0.0,0.5,0.5}
|
||||
\definecolor{xmlcdata}{rgb}{0.0,0.0,0.0}
|
||||
\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}
|
||||
\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}
|
||||
\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}
|
||||
\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}
|
||||
|
||||
% Color used for table heading
|
||||
\newcommand{\tableheadbgcolor}{lightgray}%
|
||||
|
||||
% Version of hypertarget with correct landing location
|
||||
\newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}}
|
||||
|
||||
% possibility to have sections etc. be within the margins
|
||||
% unfortunately had to copy part of book.cls and add \raggedright
|
||||
\makeatletter
|
||||
\newcounter{subsubsubsection}[subsubsection]
|
||||
\newcounter{subsubsubsubsection}[subsubsubsection]
|
||||
\newcounter{subsubsubsubsubsection}[subsubsubsubsection]
|
||||
\newcounter{subsubsubsubsubsubsection}[subsubsubsubsubsection]
|
||||
\renewcommand{\thesubsubsubsection}{\thesubsubsection.\arabic{subsubsubsection}}
|
||||
\renewcommand{\thesubsubsubsubsection}{\thesubsubsubsection.\arabic{subsubsubsubsection}}
|
||||
\renewcommand{\thesubsubsubsubsubsection}{\thesubsubsubsubsection.\arabic{subsubsubsubsubsection}}
|
||||
\renewcommand{\thesubsubsubsubsubsubsection}{\thesubsubsubsubsubsection.\arabic{subsubsubsubsubsubsection}}
|
||||
\newcommand{\subsubsubsectionmark}[1]{}
|
||||
\newcommand{\subsubsubsubsectionmark}[1]{}
|
||||
\newcommand{\subsubsubsubsubsectionmark}[1]{}
|
||||
\newcommand{\subsubsubsubsubsubsectionmark}[1]{}
|
||||
\def\toclevel@subsubsubsection{4}
|
||||
\def\toclevel@subsubsubsubsection{5}
|
||||
\def\toclevel@subsubsubsubsubsection{6}
|
||||
\def\toclevel@subsubsubsubsubsubsection{7}
|
||||
\def\toclevel@paragraph{8}
|
||||
\def\toclevel@subparagraph{9}
|
||||
|
||||
\newcommand\doxysection{\@startsection {section}{1}{\z@}%
|
||||
{-3.5ex \@plus -1ex \@minus -.2ex}%
|
||||
{2.3ex \@plus.2ex}%
|
||||
{\raggedright\normalfont\Large\bfseries}}
|
||||
\newcommand\doxysubsection{\@startsection{subsection}{2}{\z@}%
|
||||
{-3.25ex\@plus -1ex \@minus -.2ex}%
|
||||
{1.5ex \@plus .2ex}%
|
||||
{\raggedright\normalfont\large\bfseries}}
|
||||
\newcommand\doxysubsubsection{\@startsection{subsubsection}{3}{\z@}%
|
||||
{-3.25ex\@plus -1ex \@minus -.2ex}%
|
||||
{1.5ex \@plus .2ex}%
|
||||
{\raggedright\normalfont\normalsize\bfseries}}
|
||||
\newcommand\doxysubsubsubsection{\@startsection{subsubsubsection}{4}{\z@}%
|
||||
{-3.25ex\@plus -1ex \@minus -.2ex}%
|
||||
{1.5ex \@plus .2ex}%
|
||||
{\raggedright\normalfont\normalsize\bfseries}}
|
||||
\newcommand\doxysubsubsubsubsection{\@startsection{subsubsubsubsection}{5}{\z@}%
|
||||
{-3.25ex\@plus -1ex \@minus -.2ex}%
|
||||
{1.5ex \@plus .2ex}%
|
||||
{\raggedright\normalfont\normalsize\bfseries}}
|
||||
\newcommand\doxysubsubsubsubsubsection{\@startsection{subsubsubsubsubsection}{6}{\z@}%
|
||||
{-3.25ex\@plus -1ex \@minus -.2ex}%
|
||||
{1.5ex \@plus .2ex}%
|
||||
{\raggedright\normalfont\normalsize\bfseries}}
|
||||
\newcommand\doxysubsubsubsubsubsubsection{\@startsection{subsubsubsubsubsubsection}{7}{\z@}%
|
||||
{-3.25ex\@plus -1ex \@minus -.2ex}%
|
||||
{1.5ex \@plus .2ex}%
|
||||
{\raggedright\normalfont\normalsize\bfseries}}
|
||||
\newcommand\doxyparagraph{\@startsection{paragraph}{8}{\z@}%
|
||||
{-3.25ex\@plus -1ex \@minus -.2ex}%
|
||||
{1.5ex \@plus .2ex}%
|
||||
{\raggedright\normalfont\normalsize\bfseries}}
|
||||
\newcommand\doxysubparagraph{\@startsection{subparagraph}{9}{\parindent}%
|
||||
{-3.25ex\@plus -1ex \@minus -.2ex}%
|
||||
{1.5ex \@plus .2ex}%
|
||||
{\raggedright\normalfont\normalsize\bfseries}}
|
||||
|
||||
\newcommand\l@subsubsubsection{\@dottedtocline{4}{10.0em}{7.8em}}
|
||||
\newcommand\l@subsubsubsubsection{\@dottedtocline{5}{13.0em}{9.4em}}
|
||||
\newcommand\l@subsubsubsubsubsection{\@dottedtocline{6}{15.0em}{11em}}
|
||||
\newcommand\l@subsubsubsubsubsubsection{\@dottedtocline{7}{18.0em}{12.6em}}
|
||||
\renewcommand\l@paragraph{\@dottedtocline{8}{21.0em}{14.2em}}
|
||||
\renewcommand\l@subparagraph{\@dottedtocline{9}{24.0em}{15.8em}}
|
||||
\makeatother
|
||||
% the sectsty doesn't look to be maintained but gives, in our case, some warning like:
|
||||
% LaTeX Warning: Command \underline has changed.
|
||||
% Check if current package is valid.
|
||||
% unfortunately had to copy the relevant part
|
||||
\newcommand*{\doxypartfont} [1]
|
||||
{\gdef\SS@partnumberfont{\SS@sectid{0}\SS@nopart\SS@makeulinepartchap#1}
|
||||
\gdef\SS@parttitlefont{\SS@sectid{0}\SS@titlepart\SS@makeulinepartchap#1}}
|
||||
\newcommand*{\doxychapterfont} [1]
|
||||
{\gdef\SS@chapnumfont{\SS@sectid{1}\SS@nopart\SS@makeulinepartchap#1}
|
||||
\gdef\SS@chaptitlefont{\SS@sectid{1}\SS@titlepart\SS@makeulinepartchap#1}}
|
||||
\newcommand*{\doxysectionfont} [1]
|
||||
{\gdef\SS@sectfont{\SS@sectid{2}\SS@rr\SS@makeulinesect#1}}
|
||||
\newcommand*{\doxysubsectionfont} [1]
|
||||
{\gdef\SS@subsectfont{\SS@sectid{3}\SS@rr\SS@makeulinesect#1}}
|
||||
\newcommand*{\doxysubsubsectionfont} [1]
|
||||
{\gdef\SS@subsubsectfont{\SS@sectid{4}\SS@rr\SS@makeulinesect#1}}
|
||||
\newcommand*{\doxyparagraphfont} [1]
|
||||
{\gdef\SS@parafont{\SS@sectid{5}\SS@rr\SS@makeulinesect#1}}
|
||||
\newcommand*{\doxysubparagraphfont} [1]
|
||||
{\gdef\SS@subparafont{\SS@sectid{6}\SS@rr\SS@makeulinesect#1}}
|
||||
\newcommand*{\doxyminisecfont} [1]
|
||||
{\gdef\SS@minisecfont{\SS@sectid{7}\SS@rr\SS@makeulinepartchap#1}}
|
||||
\newcommand*{\doxyallsectionsfont} [1] {\doxypartfont{#1}%
|
||||
\doxychapterfont{#1}%
|
||||
\doxysectionfont{#1}%
|
||||
\doxysubsectionfont{#1}%
|
||||
\doxysubsubsectionfont{#1}%
|
||||
\doxyparagraphfont{#1}%
|
||||
\doxysubparagraphfont{#1}%
|
||||
\doxyminisecfont{#1}}%
|
||||
% Define caption that is also suitable in a table
|
||||
% for usage with hyperlinks
|
||||
\makeatletter
|
||||
\def\doxyfigcaption{%
|
||||
\H@refstepcounter{figure}%
|
||||
\@dblarg{\@caption{figure}}}
|
||||
|
||||
% for usage without hyperlinks
|
||||
\def\doxyfigcaptionnolink{%
|
||||
\refstepcounter{figure}%
|
||||
\@dblarg{\@caption{figure}}}
|
||||
\makeatother
|
||||
|
||||
% Define alpha enumarative names for counters > 26
|
||||
\makeatletter
|
||||
\def\enumalphalphcnt#1{\expandafter\@enumalphalphcnt\csname c@#1\endcsname}
|
||||
\def\@enumalphalphcnt#1{\alphalph{#1}}
|
||||
\def\enumAlphAlphcnt#1{\expandafter\@enumAlphAlphcnt\csname c@#1\endcsname}
|
||||
\def\@enumAlphAlphcnt#1{\AlphAlph{#1}}
|
||||
\makeatother
|
||||
\AddEnumerateCounter{\enumalphalphcnt}{\@enumalphalphcnt}{aa}
|
||||
\AddEnumerateCounter{\enumAlphAlphcnt}{\@enumAlphAlphcnt}{AA}
|
||||
2178
documentation/latex/etoc_doxygen.sty
Normal file
2178
documentation/latex/etoc_doxygen.sty
Normal file
File diff suppressed because it is too large
Load Diff
4
documentation/latex/files.tex
Normal file
4
documentation/latex/files.tex
Normal file
@@ -0,0 +1,4 @@
|
||||
\doxysection{File List}
|
||||
Here is a list of all documented files with brief descriptions:\+\begin{DoxyCompactList}
|
||||
\item\contentsline{section}{\doxymbox{\hyperlink{graph_8h_source}{graph.\+h}} }{\pageref{graph_8h_source}}{}
|
||||
\end{DoxyCompactList}
|
||||
43
documentation/latex/graph_8h_source.tex
Normal file
43
documentation/latex/graph_8h_source.tex
Normal file
@@ -0,0 +1,43 @@
|
||||
\doxysection{graph.\+h}
|
||||
\hypertarget{graph_8h_source}{}\label{graph_8h_source}
|
||||
\begin{DoxyCode}{0}
|
||||
\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#pragma\ once}}
|
||||
\DoxyCodeLine{00002\ \textcolor{preprocessor}{\#include\ <new>}}
|
||||
\DoxyCodeLine{00003\ \textcolor{preprocessor}{\#include\ <utility>}}
|
||||
\DoxyCodeLine{00004\ }
|
||||
\DoxyCodeLine{00005\ \textcolor{keyword}{struct\ }\doxymbox{\hyperlink{struct_point}{Point}}\ \{}
|
||||
\DoxyCodeLine{00006\ \ \ \ \ \textcolor{keywordtype}{float}\ x,\ y,\ z;}
|
||||
\DoxyCodeLine{00007\ \ \ \ \ \textcolor{keywordtype}{int}\ first\_edge\ =\ -\/1;}
|
||||
\DoxyCodeLine{00008\ \ \ \ \ \textcolor{keywordtype}{int}\ e\_count\ =\ 0;}
|
||||
\DoxyCodeLine{00009\ \};}
|
||||
\DoxyCodeLine{00010\ }
|
||||
\DoxyCodeLine{00011\ \textcolor{keyword}{struct\ }\doxymbox{\hyperlink{struct_edge}{Edge}}\ \{}
|
||||
\DoxyCodeLine{00012\ \ \ \ \ \textcolor{keywordtype}{int}\ target\_point;}
|
||||
\DoxyCodeLine{00013\ \ \ \ \ \textcolor{keywordtype}{float}\ e\_weight;}
|
||||
\DoxyCodeLine{00014\ \};}
|
||||
\DoxyCodeLine{00015\ }
|
||||
\DoxyCodeLine{00016\ \textcolor{keyword}{class\ }\doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}}\ \{}
|
||||
\DoxyCodeLine{00017\ \textcolor{keyword}{private}:}
|
||||
\DoxyCodeLine{00018\ \ \ \ \ \doxymbox{\hyperlink{struct_point}{Point}}*\ all\_points\ =\ \textcolor{keyword}{nullptr};}
|
||||
\DoxyCodeLine{00019\ \ \ \ \ \doxymbox{\hyperlink{struct_edge}{Edge}}*\ all\_edges\ =\ \textcolor{keyword}{nullptr};}
|
||||
\DoxyCodeLine{00020\ \ \ \ \ \textcolor{keywordtype}{size\_t}\ next\_possible\_edge\ =\ 0;}
|
||||
\DoxyCodeLine{00021\ \ \ \ \ \textcolor{keywordtype}{size\_t}\ p\_capacity\ =\ 0;}
|
||||
\DoxyCodeLine{00022\ \ \ \ \ \textcolor{keywordtype}{size\_t}\ e\_capacity\ =\ 0;}
|
||||
\DoxyCodeLine{00023\ }
|
||||
\DoxyCodeLine{00024\ \textcolor{keyword}{public}:}
|
||||
\DoxyCodeLine{00025\ \ \ \ \ \doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}}(\textcolor{keywordtype}{size\_t}\ maxPoints,\ \textcolor{keywordtype}{size\_t}\ maxEdges)\ \textcolor{keyword}{noexcept};}
|
||||
\DoxyCodeLine{00026\ \ \ \ \ \doxymbox{\hyperlink{class_graph_a902c5b3eacb66d60752525ab23297a95}{\string~Graph}}();}
|
||||
\DoxyCodeLine{00027\ \ \ \ \ }
|
||||
\DoxyCodeLine{00028\ \ \ \ \ \textcolor{comment}{//\ Move\ constructor}}
|
||||
\DoxyCodeLine{00029\ \ \ \ \ \doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}}(\doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}}\&\&\ other)\ \textcolor{keyword}{noexcept};}
|
||||
\DoxyCodeLine{00030\ \ \ \ \ }
|
||||
\DoxyCodeLine{00031\ \ \ \ \ \doxymbox{\hyperlink{struct_edge}{Edge}}*\ \doxymbox{\hyperlink{class_graph_a81382d6a8dffca97d8e3c8e00faf7cf6}{get\_p\_edges}}(\textcolor{keywordtype}{int}\ p\_index)\ \textcolor{keyword}{noexcept};}
|
||||
\DoxyCodeLine{00032\ }
|
||||
\DoxyCodeLine{00033\ \ \ \ \ \textcolor{keywordtype}{void}\ \doxymbox{\hyperlink{class_graph_af96ec89a386c4b1f8e74619bc7b028cc}{add\_edge}}(\textcolor{keywordtype}{int}\ start\_point\_index,\ \textcolor{keywordtype}{int}\ end\_point\_index)\ \textcolor{keyword}{noexcept};}
|
||||
\DoxyCodeLine{00034\ \ \ \ \ }
|
||||
\DoxyCodeLine{00035\ \ \ \ \ \textcolor{comment}{//Preventing\ mem-\/spikes\ by\ preventing\ copying\ and\ enforcing\ deletions.}}
|
||||
\DoxyCodeLine{00036\ \ \ \ \ \doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}}(\textcolor{keyword}{const}\ \doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}}\&)\ =\ \textcolor{keyword}{delete};}
|
||||
\DoxyCodeLine{00037\ \ \ \ \ \doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}}\&\ operator=(\textcolor{keyword}{const}\ \doxymbox{\hyperlink{class_graph_a230f67d1097f0a88f1cded9be1040ce9}{Graph}}\&)\ =\ \textcolor{keyword}{delete};}
|
||||
\DoxyCodeLine{00038\ \};}
|
||||
|
||||
\end{DoxyCode}
|
||||
67
documentation/latex/make.bat
Normal file
67
documentation/latex/make.bat
Normal file
@@ -0,0 +1,67 @@
|
||||
pushd %~dp0
|
||||
if not %errorlevel% == 0 goto :end1
|
||||
|
||||
set ORG_LATEX_CMD=%LATEX_CMD%
|
||||
set ORG_MKIDX_CMD=%MKIDX_CMD%
|
||||
set ORG_BIBTEX_CMD=%BIBTEX_CMD%
|
||||
set ORG_LATEX_COUNT=%LATEX_COUNT%
|
||||
set ORG_MANUAL_FILE=%MANUAL_FILE%
|
||||
if "X"%LATEX_CMD% == "X" set LATEX_CMD=pdflatex
|
||||
if "X"%MKIDX_CMD% == "X" set MKIDX_CMD=makeindex
|
||||
if "X"%BIBTEX_CMD% == "X" set BIBTEX_CMD=bibtex
|
||||
if "X"%LATEX_COUNT% == "X" set LATEX_COUNT=8
|
||||
if "X"%MANUAL_FILE% == "X" set MANUAL_FILE=refman
|
||||
|
||||
del /s /f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl %MANUAL_FILE%.pdf
|
||||
|
||||
|
||||
%LATEX_CMD% %MANUAL_FILE%
|
||||
@if ERRORLEVEL 1 goto :error
|
||||
echo ----
|
||||
%MKIDX_CMD% %MANUAL_FILE%.idx
|
||||
echo ----
|
||||
%LATEX_CMD% %MANUAL_FILE%
|
||||
@if ERRORLEVEL 1 goto :error
|
||||
|
||||
setlocal enabledelayedexpansion
|
||||
set count=%LATEX_COUNT%
|
||||
:repeat
|
||||
set content=X
|
||||
for /F "tokens=*" %%T in ( 'findstr /C:"Rerun LaTeX" %MANUAL_FILE%.log' ) do set content="%%~T"
|
||||
if !content! == X for /F "tokens=*" %%T in ( 'findstr /C:"Rerun to get cross-references right" %MANUAL_FILE%.log' ) do set content="%%~T"
|
||||
if !content! == X for /F "tokens=*" %%T in ( 'findstr /C:"Rerun to get bibliographical references right" %MANUAL_FILE%.log' ) do set content="%%~T"
|
||||
if !content! == X goto :skip
|
||||
set /a count-=1
|
||||
if !count! EQU 0 goto :skip
|
||||
|
||||
echo ----
|
||||
%LATEX_CMD% %MANUAL_FILE%
|
||||
@if ERRORLEVEL 1 goto :error
|
||||
goto :repeat
|
||||
:skip
|
||||
endlocal
|
||||
%MKIDX_CMD% %MANUAL_FILE%.idx
|
||||
%LATEX_CMD% %MANUAL_FILE%
|
||||
@if ERRORLEVEL 1 goto :error
|
||||
|
||||
goto :end
|
||||
:error
|
||||
@echo ===============
|
||||
@echo Please consult %MANUAL_FILE%.log to see the error messages
|
||||
@echo ===============
|
||||
|
||||
:end
|
||||
@REM reset environment
|
||||
popd
|
||||
set LATEX_CMD=%ORG_LATEX_CMD%
|
||||
set ORG_LATEX_CMD=
|
||||
set MKIDX_CMD=%ORG_MKIDX_CMD%
|
||||
set ORG_MKIDX_CMD=
|
||||
set BIBTEX_CMD=%ORG_BIBTEX_CMD%
|
||||
set ORG_BIBTEX_CMD=
|
||||
set MANUAL_FILE=%ORG_MANUAL_FILE%
|
||||
set ORG_MANUAL_FILE=
|
||||
set LATEX_COUNT=%ORG_LATEX_COUNT%
|
||||
set ORG_LATEX_COUNT=
|
||||
|
||||
:end1
|
||||
7
documentation/latex/md__r_e_a_d_m_e.tex
Normal file
7
documentation/latex/md__r_e_a_d_m_e.tex
Normal file
@@ -0,0 +1,7 @@
|
||||
\chapter{Graph\+\_\+\+Theory }
|
||||
\hypertarget{md__r_e_a_d_m_e}{}\label{md__r_e_a_d_m_e}\index{Graph\_Theory@{Graph\_Theory}}
|
||||
\label{md__r_e_a_d_m_e_autotoc_md0}%
|
||||
\Hypertarget{md__r_e_a_d_m_e_autotoc_md0}%
|
||||
|
||||
|
||||
A project based around graph theory. I create a coordinate system, store them in a hash map, and then run various mapping algorithms to find the fastest route through various configurations.
|
||||
247
documentation/latex/refman.tex
Normal file
247
documentation/latex/refman.tex
Normal file
@@ -0,0 +1,247 @@
|
||||
% Handle batch mode
|
||||
% to overcome problems with too many open files
|
||||
\let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}
|
||||
\RequirePackage{iftex}
|
||||
\ifLuaTeX
|
||||
\directlua{pdf.setminorversion(7)}
|
||||
\fi
|
||||
\ifXeTeX
|
||||
\special{pdf:minorversion 7}
|
||||
\fi
|
||||
\ifPDFTeX
|
||||
\pdfminorversion=7
|
||||
\fi
|
||||
% Set document class depending on configuration
|
||||
\documentclass[twoside]{book}
|
||||
% Packages required by doxygen
|
||||
\makeatletter
|
||||
\providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
|
||||
% suppress package identification of infwarerr as it contains the word "warning"
|
||||
\let\@@protected@wlog\protected@wlog
|
||||
\def\protected@wlog#1{\wlog{package info suppressed}}
|
||||
\RequirePackage{infwarerr}
|
||||
\let\protected@wlog\@@protected@wlog
|
||||
\makeatother
|
||||
\IfFormatAtLeastTF{2016/01/01}{}{\usepackage{fixltx2e}} % for \textsubscript
|
||||
\ifPDFTeX
|
||||
\IfFormatAtLeastTF{2015/01/01}{\pdfsuppresswarningpagegroup=1}{}
|
||||
\fi
|
||||
\usepackage{doxygen}
|
||||
\usepackage{graphicx}
|
||||
\iftutex
|
||||
\usepackage{fontspec}
|
||||
\defaultfontfeatures{Ligatures={TeX}}
|
||||
\usepackage{unicode-math}
|
||||
\else
|
||||
\usepackage[utf8]{inputenc}
|
||||
\fi
|
||||
\usepackage{makeidx}
|
||||
\PassOptionsToPackage{warn}{textcomp}
|
||||
\usepackage{textcomp}
|
||||
\usepackage[nointegrals]{wasysym}
|
||||
\usepackage{ifxetex}
|
||||
% NLS support packages
|
||||
% Define default fonts
|
||||
% Font selection
|
||||
\iftutex
|
||||
\else
|
||||
\usepackage[T1]{fontenc}
|
||||
\fi
|
||||
% set main and monospaced font
|
||||
\usepackage[scaled=.90]{helvet}
|
||||
\usepackage{courier}
|
||||
\renewcommand{\familydefault}{\sfdefault}
|
||||
\doxyallsectionsfont{%
|
||||
\fontseries{bc}\selectfont%
|
||||
\color{darkgray}%
|
||||
}
|
||||
\renewcommand{\DoxyLabelFont}{%
|
||||
\fontseries{bc}\selectfont%
|
||||
\color{darkgray}%
|
||||
}
|
||||
\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}
|
||||
% Arguments of doxygenemoji:
|
||||
% 1) ':<text>:' form of the emoji, already LaTeX-escaped
|
||||
% 2) file with the name of the emoji without the .png extension
|
||||
% in case image exist use this otherwise use the ':<text>:' form
|
||||
\newcommand{\doxygenemoji}[2]{%
|
||||
\IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}%
|
||||
}
|
||||
% Page & text layout
|
||||
\usepackage{geometry}
|
||||
\geometry{%
|
||||
a4paper,%
|
||||
top=2.5cm,%
|
||||
bottom=2.5cm,%
|
||||
left=2.5cm,%
|
||||
right=2.5cm%
|
||||
}
|
||||
\usepackage{changepage}
|
||||
% Allow a bit of overflow to go unnoticed by other means
|
||||
\tolerance=750
|
||||
\hfuzz=15pt
|
||||
\hbadness=750
|
||||
\setlength{\emergencystretch}{15pt}
|
||||
\setlength{\parindent}{0cm}
|
||||
\newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}}
|
||||
\newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}}
|
||||
\doxynormalparskip
|
||||
% Redefine paragraph/subparagraph environments, using sectsty fonts
|
||||
\makeatletter
|
||||
\renewcommand{\paragraph}{%
|
||||
\@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
|
||||
\normalfont\normalsize\bfseries\SS@parafont%
|
||||
}%
|
||||
}
|
||||
\renewcommand{\subparagraph}{%
|
||||
\@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
|
||||
\normalfont\normalsize\bfseries\SS@subparafont%
|
||||
}%
|
||||
}
|
||||
\makeatother
|
||||
\makeatletter
|
||||
\newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@}
|
||||
\makeatother
|
||||
% Headers & footers
|
||||
\usepackage{fancyhdr}
|
||||
\pagestyle{fancyplain}
|
||||
\renewcommand{\footrulewidth}{0.4pt}
|
||||
\fancypagestyle{fancyplain}{
|
||||
\fancyhf{}
|
||||
\fancyhead[LE, RO]{\bfseries\thepage}
|
||||
\fancyhead[LO]{\bfseries\rightmark}
|
||||
\fancyhead[RE]{\bfseries\leftmark}
|
||||
\fancyfoot[LO, RE]{\bfseries\scriptsize Generated by Doxygen }
|
||||
}
|
||||
\fancypagestyle{plain}{
|
||||
\fancyhf{}
|
||||
\fancyfoot[LO, RE]{\bfseries\scriptsize Generated by Doxygen }
|
||||
\renewcommand{\headrulewidth}{0pt}
|
||||
}
|
||||
\pagestyle{fancyplain}
|
||||
\renewcommand{\chaptermark}[1]{%
|
||||
\markboth{#1}{}%
|
||||
}
|
||||
\renewcommand{\sectionmark}[1]{%
|
||||
\markright{\thesection\ #1}%
|
||||
}
|
||||
% ToC, LoF, LoT, bibliography, and index
|
||||
% Indices & bibliography
|
||||
\usepackage[numbers]{natbib}
|
||||
\usepackage[titles]{tocloft}
|
||||
\setcounter{tocdepth}{3}
|
||||
\setcounter{secnumdepth}{5}
|
||||
% creating indexes
|
||||
\makeindex
|
||||
\ifPDFTeX
|
||||
\usepackage{newunicodechar}
|
||||
\makeatletter
|
||||
\def\doxynewunicodechar#1#2{%
|
||||
\@tempswafalse
|
||||
\edef\nuc@tempa{\detokenize{#1}}%
|
||||
\if\relax\nuc@tempa\relax
|
||||
\nuc@emptyargerr
|
||||
\else
|
||||
\edef\@tempb{\expandafter\@car\nuc@tempa\@nil}%
|
||||
\nuc@check
|
||||
\if@tempswa
|
||||
\@namedef{u8:\nuc@tempa}{#2}%
|
||||
\fi
|
||||
\fi
|
||||
}
|
||||
\makeatother
|
||||
\doxynewunicodechar{⁻}{${}^{-}$}% Superscript minus
|
||||
\doxynewunicodechar{²}{${}^{2}$}% Superscript two
|
||||
\doxynewunicodechar{³}{${}^{3}$}% Superscript three
|
||||
\fi
|
||||
% Hyperlinks
|
||||
% Hyperlinks (required, but should be loaded last)
|
||||
\ifPDFTeX
|
||||
\usepackage[pdftex,pagebackref=true]{hyperref}
|
||||
\else
|
||||
\ifXeTeX
|
||||
\usepackage[xetex,pagebackref=true]{hyperref}
|
||||
\else
|
||||
\ifLuaTeX
|
||||
\usepackage[luatex,pagebackref=true]{hyperref}
|
||||
\else
|
||||
\usepackage[ps2pdf,pagebackref=true]{hyperref}
|
||||
\fi
|
||||
\fi
|
||||
\fi
|
||||
\hypersetup{%
|
||||
colorlinks=true,%
|
||||
linkcolor=blue,%
|
||||
citecolor=blue,%
|
||||
unicode,%
|
||||
pdftitle={Graph Theory},%
|
||||
pdfsubject={}%
|
||||
}
|
||||
% Custom commands used by the header
|
||||
% Custom commands
|
||||
\newcommand{\clearemptydoublepage}{%
|
||||
\newpage{\pagestyle{empty}\cleardoublepage}%
|
||||
}
|
||||
% caption style definition
|
||||
\usepackage{caption}
|
||||
\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}
|
||||
% in page table of contents
|
||||
\IfFormatAtLeastTF{2023/05/01}{\usepackage[deeplevels]{etoc}}{\usepackage[deeplevels]{etoc_doxygen}}
|
||||
\etocsettocstyle{\doxytocparskip}{\doxynormalparskip}
|
||||
\etocsetlevel{subsubsubsection}{4}
|
||||
\etocsetlevel{subsubsubsubsection}{5}
|
||||
\etocsetlevel{subsubsubsubsubsection}{6}
|
||||
\etocsetlevel{subsubsubsubsubsubsection}{7}
|
||||
\etocsetlevel{paragraph}{8}
|
||||
\etocsetlevel{subparagraph}{9}
|
||||
% prevent numbers overlap the titles in toc
|
||||
\renewcommand{\numberline}[1]{#1~}
|
||||
% End of preamble, now comes the document contents
|
||||
%===== C O N T E N T S =====
|
||||
\begin{document}
|
||||
\raggedbottom
|
||||
% Titlepage & ToC
|
||||
% To avoid duplicate page anchors due to reuse of same numbers for
|
||||
% the index (be it as roman numbers)
|
||||
\hypersetup{pageanchor=false,
|
||||
bookmarksnumbered=true,
|
||||
pdfencoding=unicode
|
||||
}
|
||||
\pagenumbering{alph}
|
||||
\begin{titlepage}
|
||||
\vspace*{7cm}
|
||||
\begin{center}%
|
||||
{\Large Graph Theory}\\
|
||||
\vspace*{1cm}
|
||||
{\large Generated by Doxygen 1.16.1}\\
|
||||
\end{center}
|
||||
\end{titlepage}
|
||||
\clearemptydoublepage
|
||||
\pagenumbering{roman}
|
||||
\tableofcontents
|
||||
\clearemptydoublepage
|
||||
\pagenumbering{arabic}
|
||||
% re-enable anchors again
|
||||
\hypersetup{pageanchor=true}
|
||||
%--- Begin generated contents ---
|
||||
\input{md__r_e_a_d_m_e}
|
||||
\chapter{Class Index}
|
||||
\input{annotated}
|
||||
\chapter{File Index}
|
||||
\input{files}
|
||||
\chapter{Class Documentation}
|
||||
\input{struct_edge}
|
||||
\input{class_graph}
|
||||
\input{struct_point}
|
||||
\chapter{File Documentation}
|
||||
\input{graph_8h_source}
|
||||
%--- End generated contents ---
|
||||
% Index
|
||||
\backmatter
|
||||
\newpage
|
||||
\phantomsection
|
||||
\clearemptydoublepage
|
||||
\addcontentsline{toc}{chapter}{\indexname}
|
||||
\printindex
|
||||
% Required for some languages (in combination with latexdocumentpre from the header)
|
||||
\end{document}
|
||||
16
documentation/latex/struct_edge.tex
Normal file
16
documentation/latex/struct_edge.tex
Normal file
@@ -0,0 +1,16 @@
|
||||
\doxysection{Edge Struct Reference}
|
||||
\hypertarget{struct_edge}{}\label{struct_edge}\index{Edge@{Edge}}
|
||||
\doxysubsubsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\Hypertarget{struct_edge_a4da5f87cf286d00a2a467e1a007fdc60}\label{struct_edge_a4da5f87cf286d00a2a467e1a007fdc60}
|
||||
int {\bfseries target\+\_\+point}
|
||||
\item
|
||||
\Hypertarget{struct_edge_a8130fe79aa4bbc4750b4da891d5f6b4b}\label{struct_edge_a8130fe79aa4bbc4750b4da891d5f6b4b}
|
||||
float {\bfseries e\+\_\+weight}
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
The documentation for this struct was generated from the following file:\+\begin{DoxyCompactItemize}
|
||||
\item
|
||||
graph.\+h\end{DoxyCompactItemize}
|
||||
25
documentation/latex/struct_point.tex
Normal file
25
documentation/latex/struct_point.tex
Normal file
@@ -0,0 +1,25 @@
|
||||
\doxysection{Point Struct Reference}
|
||||
\hypertarget{struct_point}{}\label{struct_point}\index{Point@{Point}}
|
||||
\doxysubsubsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\Hypertarget{struct_point_a05dfe2dfbde813ad234b514f30e662f1}\label{struct_point_a05dfe2dfbde813ad234b514f30e662f1}
|
||||
float {\bfseries x}
|
||||
\item
|
||||
\Hypertarget{struct_point_a6101960c8d2d4e8ea1d32c9234bbeb8d}\label{struct_point_a6101960c8d2d4e8ea1d32c9234bbeb8d}
|
||||
float {\bfseries y}
|
||||
\item
|
||||
\Hypertarget{struct_point_a9a666531e0e99adff132be93d2407d0c}\label{struct_point_a9a666531e0e99adff132be93d2407d0c}
|
||||
float {\bfseries z}
|
||||
\item
|
||||
\Hypertarget{struct_point_ac422f98c8883be96418e6ad4c62b460c}\label{struct_point_ac422f98c8883be96418e6ad4c62b460c}
|
||||
int {\bfseries first\+\_\+edge} = -\/1
|
||||
\item
|
||||
\Hypertarget{struct_point_a2f568490d6db5ce20ca613426d4d88c7}\label{struct_point_a2f568490d6db5ce20ca613426d4d88c7}
|
||||
int {\bfseries e\+\_\+count} = 0
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
The documentation for this struct was generated from the following file:\+\begin{DoxyCompactItemize}
|
||||
\item
|
||||
graph.\+h\end{DoxyCompactItemize}
|
||||
Reference in New Issue
Block a user