add doxygen configuration
This commit is contained in:
42
doc/latex/Makefile
Normal file
42
doc/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
|
||||
4
doc/latex/annotated.tex
Normal file
4
doc/latex/annotated.tex
Normal file
@@ -0,0 +1,4 @@
|
||||
\doxysection{Class List}
|
||||
Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{structconfigEntry}{config\+Entry}} }{\pageref{structconfigEntry}}{}
|
||||
\end{DoxyCompactList}
|
||||
94
doc/latex/config_8c.tex
Normal file
94
doc/latex/config_8c.tex
Normal file
@@ -0,0 +1,94 @@
|
||||
\doxysection{config.\+c File Reference}
|
||||
\hypertarget{config_8c}{}\label{config_8c}\index{config.c@{config.c}}
|
||||
{\ttfamily \#include "{}config.\+h"{}}\newline
|
||||
{\ttfamily \#include $<$stdio.\+h$>$}\newline
|
||||
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
|
||||
{\ttfamily \#include $<$string.\+h$>$}\newline
|
||||
{\ttfamily \#include $<$errno.\+h$>$}\newline
|
||||
\doxysubsubsection*{Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
int \mbox{\hyperlink{config_8c_aae86bc3f3ebba4d6aba3ca1392c0126a}{check\+Section}} (char \texorpdfstring{$\ast$}{*}str, char delimiter\+Left, char delimiter\+Right, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}section\+Name)
|
||||
\begin{DoxyCompactList}\small\item\em Here we check if the given string contains a section for example \mbox{[}SECTIONName\mbox{]} here delimiter\+Left is \mbox{[} and delimiter\+Right is \mbox{]} if a section is found, the section name will be written to section\+Name. \end{DoxyCompactList}\item
|
||||
int \mbox{\hyperlink{config_8c_a699e504c1ab9ceffb828dbf365a5e374}{get\+Str\+At\+Pos}} (char \texorpdfstring{$\ast$}{*}str, int from\+Pos, int to\+Pos, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name, int size\+Name)
|
||||
\item
|
||||
int \mbox{\hyperlink{config_8c_ab0b547ee554d9b305adc1b2ad85080a3}{get\+Name\+Value\+Pair}} (char \texorpdfstring{$\ast$}{*}str, char left\+Delimiter\+Pos, char right\+Delimiter\+Pos, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}value, int size\+Name, int size\+Value)
|
||||
\item
|
||||
int \mbox{\hyperlink{config_8c_a15a5f64f830221feac0af723899208b2}{parse\+Config}} (char \texorpdfstring{$\ast$}{*}original\+Buffer, struct \mbox{\hyperlink{structconfigEntry}{config\+Entry}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}entry, int config\+Size\+Count, int \texorpdfstring{$\ast$}{*}returned\+Count)
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\doxysubsection{Function Documentation}
|
||||
\Hypertarget{config_8c_aae86bc3f3ebba4d6aba3ca1392c0126a}\index{config.c@{config.c}!checkSection@{checkSection}}
|
||||
\index{checkSection@{checkSection}!config.c@{config.c}}
|
||||
\doxysubsubsection{\texorpdfstring{checkSection()}{checkSection()}}
|
||||
{\footnotesize\ttfamily \label{config_8c_aae86bc3f3ebba4d6aba3ca1392c0126a}
|
||||
int check\+Section (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{str}{, }\item[{char}]{delimiter\+Left}{, }\item[{char}]{delimiter\+Right}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{section\+Name}{}\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Here we check if the given string contains a section for example \mbox{[}SECTIONName\mbox{]} here delimiter\+Left is \mbox{[} and delimiter\+Right is \mbox{]} if a section is found, the section name will be written to section\+Name.
|
||||
|
||||
Input\+:
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em char} & \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}str\+: the string to check \\
|
||||
\hline
|
||||
{\em char} & delimiter\+Left\+: the left delimiter to check for \\
|
||||
\hline
|
||||
{\em char} & delimiter\+Right\+: the right delimiter to check for\\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
Output\+:
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em char} & \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}section\+Name\+: if found the section Name of the section\\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
Return\+:
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em int} & status\+\_\+code\+: one of the following values\+: \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8c_source_l00024}{24}} of file \mbox{\hyperlink{config_8c_source}{config.\+c}}.
|
||||
|
||||
\Hypertarget{config_8c_ab0b547ee554d9b305adc1b2ad85080a3}\index{config.c@{config.c}!getNameValuePair@{getNameValuePair}}
|
||||
\index{getNameValuePair@{getNameValuePair}!config.c@{config.c}}
|
||||
\doxysubsubsection{\texorpdfstring{getNameValuePair()}{getNameValuePair()}}
|
||||
{\footnotesize\ttfamily \label{config_8c_ab0b547ee554d9b305adc1b2ad85080a3}
|
||||
int get\+Name\+Value\+Pair (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{str}{, }\item[{char}]{left\+Delimiter\+Pos}{, }\item[{char}]{right\+Delimiter\+Pos}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{name}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{value}{, }\item[{int}]{size\+Name}{, }\item[{int}]{size\+Value}{}\end{DoxyParamCaption})}
|
||||
|
||||
Here we get a "{}pair"{} of data, parsed from \texorpdfstring{$\ast$}{*}str, witch consists of a keyname and a keyvalue. These are written to the pointers at char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name and char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}value. These pair can be in the form of\+: ex1\+: NAME=VALUE \texorpdfstring{$^\wedge$}{\string^} \texorpdfstring{$^\wedge$}{\string^} \texorpdfstring{$\vert$}{|} Here we have no delimiter this means right\+Delimiter\+Pos must be NULL This is the left delimiter ex2\+: name(value) \texorpdfstring{$^\wedge$}{\string^} \texorpdfstring{$^\wedge$}{\string^} \texorpdfstring{$\vert$}{|} This is the right\+Delimiter\+Pos and must be \textquotesingle{})\textquotesingle{} This is left\+Delimiter\+Pos which must be \textquotesingle{}(\textquotesingle{}
|
||||
|
||||
Input\+: char \texorpdfstring{$\ast$}{*}str\+: the line in the form of a string where a key value pair is stored char left\+Delimiter\+Pos\+: the left delimiter for example \textquotesingle{}=\textquotesingle{} char right\+Delimiter\+Pos\+: the right delimiter can be NULL in most cases, if NULL we assume that there is only one delimiter, which is in this case the left\+Delimiter\+Pos Output\+: char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name\+: The address where we store the name of the Key char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}value\+: The address where we store the key value int size\+Name\+: for size checking against memory allocated at \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name int size\+Value\+: for size checking against memory allocated at \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}value
|
||||
|
||||
Return\+: will return NO\+\_\+\+ERROR (0) if successfull. If not it will return the error of the subroutine
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8c_source_l00151}{151}} of file \mbox{\hyperlink{config_8c_source}{config.\+c}}.
|
||||
|
||||
\Hypertarget{config_8c_a699e504c1ab9ceffb828dbf365a5e374}\index{config.c@{config.c}!getStrAtPos@{getStrAtPos}}
|
||||
\index{getStrAtPos@{getStrAtPos}!config.c@{config.c}}
|
||||
\doxysubsubsection{\texorpdfstring{getStrAtPos()}{getStrAtPos()}}
|
||||
{\footnotesize\ttfamily \label{config_8c_a699e504c1ab9ceffb828dbf365a5e374}
|
||||
int get\+Str\+At\+Pos (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{str}{, }\item[{int}]{from\+Pos}{, }\item[{int}]{to\+Pos}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{name}{, }\item[{int}]{size\+Name}{}\end{DoxyParamCaption})}
|
||||
|
||||
Here we get / cut from from\+Pos to to\+Pos and write it to an address
|
||||
|
||||
Input\+: char \texorpdfstring{$\ast$}{*}str\+: the string to cut int from\+Pos\+: from which position we want to copy, the pos is included and zero indexed int to\+Pos\+: to which position we want to copy, the pos is included and zero indexed Output\+: char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name\+: here we will write the section name to Input\+: int size\+Name\+: the size of the user allocated buffer at \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8c_source_l00098}{98}} of file \mbox{\hyperlink{config_8c_source}{config.\+c}}.
|
||||
|
||||
\Hypertarget{config_8c_a15a5f64f830221feac0af723899208b2}\index{config.c@{config.c}!parseConfig@{parseConfig}}
|
||||
\index{parseConfig@{parseConfig}!config.c@{config.c}}
|
||||
\doxysubsubsection{\texorpdfstring{parseConfig()}{parseConfig()}}
|
||||
{\footnotesize\ttfamily \label{config_8c_a15a5f64f830221feac0af723899208b2}
|
||||
int parse\+Config (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{original\+Buffer}{, }\item[{struct \mbox{\hyperlink{structconfigEntry}{config\+Entry}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{entry}{, }\item[{int}]{config\+Size\+Count}{, }\item[{int \texorpdfstring{$\ast$}{*}}]{returned\+Count}{}\end{DoxyParamCaption})}
|
||||
|
||||
Given a null terminated buffer of content(ex. from a file) an parse it with a default syntax of\+: Sections -\/\texorpdfstring{$>$}{>} \mbox{[}SECTIONNAME\mbox{]} name / value -\/\texorpdfstring{$>$}{>} name=value
|
||||
|
||||
Input\+: char \texorpdfstring{$\ast$}{*}original\+Buffer\+: the buffer which holds the string for parsing. struct \doxylink{structconfigEntry}{config\+Entry} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}entry\+: a user allocated buffer to which we write the parsed config data. int config\+Size\+Count\+: the user allocated size of \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}entry. Output\+: int \texorpdfstring{$\ast$}{*}returned\+Count\+: to this variable the function writes the count of struct, which will be required to store all alavaible data.
|
||||
|
||||
Note\+: The funtion returns the maximum allowed data structures, determined by config\+Size\+Count. All data which exceeds will be dropped. To get the whole data we run the funtion a second time with the realloced config\+Size\+Count in the size of \mbox{[}returned\+Count\mbox{]} structures.
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8c_source_l00215}{215}} of file \mbox{\hyperlink{config_8c_source}{config.\+c}}.
|
||||
|
||||
241
doc/latex/config_8c_source.tex
Normal file
241
doc/latex/config_8c_source.tex
Normal file
@@ -0,0 +1,241 @@
|
||||
\doxysection{config.\+c}
|
||||
\hypertarget{config_8c_source}{}\label{config_8c_source}\mbox{\hyperlink{config_8c}{Go to the documentation of this file.}}
|
||||
\begin{DoxyCode}{0}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00001}00001\ \textcolor{preprocessor}{\#include"{}\mbox{\hyperlink{config_8h}{config.h}}"{}}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00002}00002\ \textcolor{preprocessor}{\#include<stdio.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00003}00003\ \textcolor{preprocessor}{\#include<stdlib.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00004}00004\ \textcolor{preprocessor}{\#include<string.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00005}00005\ \textcolor{preprocessor}{\#include<errno.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00006}00006\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00024}\mbox{\hyperlink{config_8c_aae86bc3f3ebba4d6aba3ca1392c0126a}{00024}}\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8c_aae86bc3f3ebba4d6aba3ca1392c0126a}{checkSection}}(\textcolor{keywordtype}{char}\ *str,\textcolor{keywordtype}{char}\ delimiterLeft,\textcolor{keywordtype}{char}\ delimiterRight,\textcolor{keywordtype}{char}\ **sectionName)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00025}00025\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00026}00026\ \ \ \ \ \textcolor{keywordtype}{char}\ section[\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}}];}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00027}00027\ \ \ \ \ \textcolor{keywordtype}{int}\ i\ =\ 0;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//most\ outer\ loop\ -\/>\ character\ of\ string}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00028}00028\ \ \ \ \ \textcolor{keywordflow}{if}(str\ ==\ NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00029}00029\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00030}00030\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_abc212059095802b47f10a6a49fd45abc}{ERROR\_STR}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00031}00031\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00032}00032\ \ \ \ \ \textcolor{keywordtype}{int}\ len\ =\ strlen(str);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00033}00033\ \ \ \ \ \textcolor{keywordtype}{int}\ state\ =\ \mbox{\hyperlink{config_8h_a07c5dd6a63f85102afff94734b066db6}{ST\_INIT}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00034}00034\ \ \ \ \ \textcolor{keywordtype}{int}\ leftDelimiterPos=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00035}00035\ \ \ \ \ \textcolor{keywordtype}{int}\ rightDelimiterPos=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00036}00036\ \ \ \ \ \textcolor{keywordtype}{char}\ *sectionName2\ =\ NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00037}00037\ \ \ \ \ \textcolor{keywordflow}{while}(state\ !=\ \mbox{\hyperlink{config_8h_a587e636e48ca212f7c964a93ae005e03}{ST\_FINISH}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00038}00038\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00039}00039\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{switch}(state)\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00040}00040\ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00041}00041\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{config_8h_a07c5dd6a63f85102afff94734b066db6}{ST\_INIT}}:}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00042}00042\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}(i=0;i<=len;i++)\ \ \ \ \ \ \ \ \textcolor{comment}{//find\ first\ (left)\ delimiter\ \ \ \ }}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00043}00043\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00044}00044\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(str[i]\ ==\ delimiterLeft)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00045}00045\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00046}00046\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ state\ =\ \mbox{\hyperlink{config_8h_a4aa0fcd1d1c19c873711c0dbdf590f51}{ST\_FOUND\_LEFT\_DELIMITER}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00047}00047\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ leftDelimiterPos\ =\ i;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00048}00048\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00049}00049\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00050}00050\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00051}00051\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(state\ !=\ \mbox{\hyperlink{config_8h_a4aa0fcd1d1c19c873711c0dbdf590f51}{ST\_FOUND\_LEFT\_DELIMITER}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00052}00052\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00053}00053\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_afae21c34cd1bfa910d95db50f151c81c}{ST\_ERROR\_NOT\_FOUND\_LEFT\_DELIMITER}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00054}00054\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00055}00055\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00056}00056\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{config_8h_a4aa0fcd1d1c19c873711c0dbdf590f51}{ST\_FOUND\_LEFT\_DELIMITER}}:}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00057}00057\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}(i=0;i<=len;i++)\ \ \ \ \ \ \ \ \textcolor{comment}{//find\ second\ (right)\ delimiter\ \ \ \ }}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00058}00058\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00059}00059\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(str[i]\ ==\ delimiterRight)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00060}00060\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00061}00061\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ state\ =\ \mbox{\hyperlink{config_8h_a109ad3408cd20ac98f7063ad33ee151c}{ST\_FOUND\_RIGHT\_DELIMITER}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00062}00062\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ rightDelimiterPos\ =\ i;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00063}00063\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00064}00064\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00065}00065\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00066}00066\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(state\ !=\ \mbox{\hyperlink{config_8h_a109ad3408cd20ac98f7063ad33ee151c}{ST\_FOUND\_RIGHT\_DELIMITER}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00067}00067\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00068}00068\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_aea1c2232d9f2837fbb565f13e5d7e8ea}{ST\_ERROR\_NOT\_FOUND\_RIGHT\_DELIMITER}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00069}00069\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00070}00070\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00071}00071\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{config_8h_a109ad3408cd20ac98f7063ad33ee151c}{ST\_FOUND\_RIGHT\_DELIMITER}}:}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00072}00072\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{int}\ ret=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00073}00073\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((ret=\mbox{\hyperlink{config_8c_a699e504c1ab9ceffb828dbf365a5e374}{getStrAtPos}}(str,leftDelimiterPos,rightDelimiterPos,sectionName,\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}}))\ ==\ \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00074}00074\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00075}00075\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ state\ =\ \mbox{\hyperlink{config_8h_a587e636e48ca212f7c964a93ae005e03}{ST\_FINISH}};\ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00076}00076\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}\textcolor{keywordflow}{else}\{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00077}00077\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ ret;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00078}00078\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00079}00079\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{config_8h_a587e636e48ca212f7c964a93ae005e03}{ST\_FINISH}}:}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00080}00080\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_a02f5a0519bc0372946e64d593c0c58ce}{FOUND\_SECTION}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00081}00081\ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00082}00082\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00083}00083\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_ac1a724419200e9f961dc787950aecd2b}{NO\_SECTION}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00084}00084\ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00085}00085\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00098}\mbox{\hyperlink{config_8c_a699e504c1ab9ceffb828dbf365a5e374}{00098}}\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8c_a699e504c1ab9ceffb828dbf365a5e374}{getStrAtPos}}(\textcolor{keywordtype}{char}\ *str,\textcolor{keywordtype}{int}\ fromPos,\textcolor{keywordtype}{int}\ toPos,\textcolor{keywordtype}{char}\ **name,\textcolor{keywordtype}{int}\ sizeName)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00099}00099\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00100}00100\ \ \ \ \ \textcolor{keywordflow}{if}(*name\ ==\ NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00101}00101\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00102}00102\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{int}\ error\ =\ errno;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00103}00103\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Pointer\ NULL:\%d\(\backslash\)n"{}},error);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00104}00104\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ error;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00105}00105\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00106}00106\ \ \ \ \ \textcolor{keywordtype}{int}\ i=fromPos;\ \ \ \ \ \ \textcolor{comment}{//character\ iterator,\ which\ starts\ from\ specified\ pos}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00107}00107\ \ \ \ \ \textcolor{keywordtype}{int}\ j=0;\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//the\ character\ iterator\ for\ the\ target\ string}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00108}00108\ \ \ \ \ \textcolor{keywordtype}{int}\ diffLen=toPos-\/fromPos;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00109}00109\ \ \ \ \ \textcolor{keywordtype}{char}\ *ptr\_name=*name;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00110}00110\ \ \ \ \ \textcolor{keywordflow}{if}(diffLen\ >\ \mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}}\ ||\ diffLen>sizeName)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00111}00111\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00112}00112\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_a39de51bdb6918a63eac8b1bb474e2b84}{ERROR\_MAX\_LEN}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00113}00113\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00114}00114\ \ \ \ \ \textcolor{keywordflow}{for}(i=fromPos,j=0;i<=toPos;i++,j++)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00115}00115\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00116}00116\ \ \ \ \ \ \ \ \ ptr\_name[j]\ \ =\ str[i];}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00117}00117\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00118}00118\ \ \ \ \ ptr\_name[j+1]=\textcolor{charliteral}{'\(\backslash\)0'};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00119}00119\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00120}00120\ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00121}00121\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00151}\mbox{\hyperlink{config_8c_ab0b547ee554d9b305adc1b2ad85080a3}{00151}}\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8c_ab0b547ee554d9b305adc1b2ad85080a3}{getNameValuePair}}(\textcolor{keywordtype}{char}\ *str,\textcolor{keywordtype}{char}\ leftDelimiterPos,\textcolor{keywordtype}{char}\ rightDelimiterPos,\textcolor{keywordtype}{char}\ **name,\textcolor{keywordtype}{char}\ **value,\textcolor{keywordtype}{int}\ sizeName,\textcolor{keywordtype}{int}\ sizeValue)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00152}00152\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00153}00153\ \ \ \ \ \textcolor{keywordflow}{if}(*name\ ==\ NULL\ ||\ *value\ ==\ NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00154}00154\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00155}00155\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{int}\ error\ =\ errno;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00156}00156\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Pointer\ NULL:\%d\(\backslash\)n"{}},error);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00157}00157\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ error;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00158}00158\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00159}00159\ \ \ \ \ \textcolor{keywordtype}{int}\ state=\mbox{\hyperlink{config_8h_a07c5dd6a63f85102afff94734b066db6}{ST\_INIT}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00160}00160\ \ \ \ \ \textcolor{keywordtype}{char}\ *ptr\_name=*name;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00161}00161\ \ \ \ \ \textcolor{keywordtype}{char}\ *ptr\_value=*value;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00162}00162\ \ \ \ \ \textcolor{keywordtype}{int}\ ret=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00163}00163\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00164}00164\ \ \ \ \ \textcolor{keywordtype}{char}\ *ptrDelimiter=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00165}00165\ \ \ \ \ \textcolor{keywordtype}{int}\ posDelimiter=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00166}00166\ \ \ \ \ \textcolor{keywordtype}{int}\ posEnd=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00167}00167\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00168}00168\ \ \ \ \ ptrDelimiter=strchr(str,leftDelimiterPos);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00169}00169\ \ \ \ \ \textcolor{keywordflow}{if}(ptrDelimiter==NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00170}00170\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00171}00171\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_a0000658c96c7c74c0904aafe03429a7d}{ERROR\_DELIMITER\_NOT\_FOUND}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00172}00172\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00173}00173\ \ \ \ \ posDelimiter\ =\ (ptrDelimiter\ -\/\ str);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00174}00174\ \ \ \ \ printf(\textcolor{stringliteral}{"{}LenUntilDelimiter:\ \%d\(\backslash\)n"{}},posDelimiter);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00175}00175\ \ \ \ \ \textcolor{keywordflow}{if}((ret=\mbox{\hyperlink{config_8c_a699e504c1ab9ceffb828dbf365a5e374}{getStrAtPos}}(str,0,posDelimiter-\/1,\&ptr\_name,sizeName))\ ==\ \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00176}00176\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00177}00177\ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}ptr\_name:\%s\(\backslash\)n"{}},ptr\_name);\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00178}00178\ \ \ \ \ \}\textcolor{keywordflow}{else}\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00179}00179\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Error\ at\ getStrAtPos:\%d\(\backslash\)n"{}},ret);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00180}00180\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ ret;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00181}00181\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00182}00182\ \ \ \ \ \textcolor{keywordflow}{if}(rightDelimiterPos\ ==\ 0)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00183}00183\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00184}00184\ \ \ \ \ \ \ \ \ posEnd\ =\ strlen(str);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00185}00185\ \ \ \ \ \}\textcolor{keywordflow}{else}\{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00186}00186\ \ \ \ \ \ \ \ \ posEnd\ =\ rightDelimiterPos;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00187}00187\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00188}00188\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00189}00189\ \ \ \ \ \textcolor{keywordflow}{if}((ret=\mbox{\hyperlink{config_8c_a699e504c1ab9ceffb828dbf365a5e374}{getStrAtPos}}(str,posDelimiter+1,posEnd,\&ptr\_value,sizeValue))\ ==\ \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00190}00190\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00191}00191\ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}ptr\_name:\%s\(\backslash\)n"{}},ptr\_value);\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00192}00192\ \ \ \ \ \}\textcolor{keywordflow}{else}\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00193}00193\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ ret;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00194}00194\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00195}00195\ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00196}00196\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00197}00197\ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00198}00198\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00215}\mbox{\hyperlink{config_8c_a15a5f64f830221feac0af723899208b2}{00215}}\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8c_a15a5f64f830221feac0af723899208b2}{parseConfig}}(\textcolor{keywordtype}{char}\ *originalBuffer,\textcolor{keyword}{struct}\ \mbox{\hyperlink{structconfigEntry}{configEntry}}\ **entry,\textcolor{keywordtype}{int}\ configSizeCount,\textcolor{keywordtype}{int}\ *returnedCount)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00216}00216\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00217}00217\ \ \ \ \ \textcolor{keywordtype}{int}\ state=\mbox{\hyperlink{config_8h_a07c5dd6a63f85102afff94734b066db6}{ST\_INIT}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00218}00218\ \ \ \ \ \textcolor{keywordtype}{int}\ ret=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00219}00219\ \ \ \ \ \textcolor{keywordtype}{int}\ i=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00220}00220\ \ \ \ \ *returnedCount=0;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00221}00221\ \ \ \ \ \textcolor{keywordtype}{char}\ *sectionName=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00222}00222\ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structconfigEntry}{configEntry}}\ *ptr\_entry\ =\ *entry;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00223}00223\ \ \ \ \ \textcolor{keywordtype}{char}\ *\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}}=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00224}00224\ \ \ \ \ \textcolor{keywordtype}{char}\ *\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}}=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00225}00225\ \ \ \ \ \textcolor{keywordtype}{char}\ *buffer=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00226}00226\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00227}00227\ \ \ \ \ buffer\ =\ malloc(strlen(originalBuffer)+1);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00228}00228\ \ \ \ \ \textcolor{keywordflow}{if}(buffer\ ==\ NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00229}00229\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00230}00230\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{int}\ error\ =\ errno;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00231}00231\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}ERROR\ MALLOC:\%d"{}},error);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00232}00232\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_ae0f18393ca3f7c151a4e58ae35b119f7}{ERR\_PARSECONFIG\_UNKNOWN}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00233}00233\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00234}00234\ \ \ \ \ memset(buffer,0,strlen(originalBuffer)+1);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00235}00235\ \ \ \ \ strcpy(buffer,originalBuffer);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00236}00236\ \ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00237}00237\ \ \ \ \ \textcolor{comment}{//this\ step\ is\ necessary,\ because\ the\ strok\ function\ modifys\ the\ originalBuffer}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00238}00238\ \ \ \ \ \textcolor{comment}{//so\ we\ make\ a\ copy\ of\ it}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00239}00239\ \ \ \ \ strcpy(buffer,originalBuffer);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00240}00240\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00241}00241\ \ \ \ \ printf(\textcolor{stringliteral}{"{}buffer:\%s\(\backslash\)n-\/-\/"{}},buffer);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00242}00242\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00243}00243\ \ \ \ \ \mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}}\ =\ malloc(\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00244}00244\ \ \ \ \ memset(\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}},0,\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00245}00245\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00246}00246\ \ \ \ \ \textcolor{comment}{//read\ buffer\ line\ by\ line}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00247}00247\ \ \ \ \ \textcolor{keywordtype}{char}\ *token;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00248}00248\ \ \ \ \ token\ =\ strtok(buffer,\textcolor{stringliteral}{"{}\(\backslash\)n"{}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00249}00249\ \ \ \ \ \textcolor{keywordflow}{while}(token\ !=\ NULL\ \&\&\ state\ !=\ \mbox{\hyperlink{config_8h_a587e636e48ca212f7c964a93ae005e03}{ST\_FINISH}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00250}00250\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00251}00251\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00252}00252\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{switch}(state)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00253}00253\ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00254}00254\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{config_8h_a07c5dd6a63f85102afff94734b066db6}{ST\_INIT}}:}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00255}00255\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((ret=\mbox{\hyperlink{config_8c_aae86bc3f3ebba4d6aba3ca1392c0126a}{checkSection}}(token,\textcolor{charliteral}{'['},\textcolor{charliteral}{']'},\&\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}}))==\mbox{\hyperlink{config_8h_a02f5a0519bc0372946e64d593c0c58ce}{FOUND\_SECTION}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00256}00256\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00257}00257\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ state\ =\ \mbox{\hyperlink{config_8h_a50f0255611b79622dbca5cf9c27b7f43}{ST\_FOUND\_SECTION}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00258}00258\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}FOUND\_SECTION:\%s\(\backslash\)n"{}},\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00259}00259\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00260}00260\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00261}00261\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{config_8h_a50f0255611b79622dbca5cf9c27b7f43}{ST\_FOUND\_SECTION}}:}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00262}00262\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}}\ =\ malloc(\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00263}00263\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}}\ =\ malloc(\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00264}00264\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}}\ ==\ NULL\ ||\ \mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}}\ ==\ NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00265}00265\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00266}00266\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{int}\ error\ =\ errno;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00267}00267\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}MALLOC:\%d\(\backslash\)n"{}},error);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00268}00268\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ error;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00269}00269\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00270}00270\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ memset(\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}},0,\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00271}00271\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ memset(\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}},0,\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00272}00272\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00273}00273\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ret=\mbox{\hyperlink{config_8c_ab0b547ee554d9b305adc1b2ad85080a3}{getNameValuePair}}(token,\textcolor{charliteral}{'='},0,\&\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}},\&\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}},\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}},\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00274}00274\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(ret==\mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00275}00275\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00276}00276\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}configSizeCount:\ \%d,\ i:\%d\(\backslash\)n"{}},configSizeCount,i);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00277}00277\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(i<configSizeCount)}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00278}00278\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00279}00279\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ptr\_entry[i].\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}}\ =\ strdup(\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00280}00280\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ptr\_entry[i].\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}}=\ strdup(\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00281}00281\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ptr\_entry[i].\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}}\ =\ strdup(\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00282}00282\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00283}00283\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ i++;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00284}00284\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ *returnedCount\ =\ i;}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00285}00285\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ state\ =\ \mbox{\hyperlink{config_8h_a50f0255611b79622dbca5cf9c27b7f43}{ST\_FOUND\_SECTION}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00286}00286\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00287}00287\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00288}00288\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ state\ =\ \mbox{\hyperlink{config_8h_a71a276bab1ecc5d309fe1593a1640d5d}{ST\_SKIP\_READ}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00289}00289\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00290}00290\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ free(\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00291}00291\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ free(\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00292}00292\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00293}00293\ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00294}00294\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00295}00295\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(state\ !=\ \mbox{\hyperlink{config_8h_a71a276bab1ecc5d309fe1593a1640d5d}{ST\_SKIP\_READ}})}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00296}00296\ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00297}00297\ \ \ \ \ \ \ \ \ \ \ \ \ token\ =\ strtok(NULL,\textcolor{stringliteral}{"{}\(\backslash\)n"{}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00298}00298\ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00299}00299\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00300}00300\ \ \ \ \ \ \ \ \ \ \ \ \ state\ =\ \mbox{\hyperlink{config_8h_a07c5dd6a63f85102afff94734b066db6}{ST\_INIT}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00301}00301\ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00302}00302\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00303}00303\ \ \ \ \ printf(\textcolor{stringliteral}{"{}token:\ \%s\(\backslash\)n"{}},token);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00304}00304\ \ \ \ \ printf(\textcolor{stringliteral}{"{}buffer:\%s\(\backslash\)n-\/-\/"{}},buffer);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00305}00305\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00306}00306\ \ \ \ \ free(\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}});}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00307}00307\ \ \ \ \ free(buffer);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00308}00308\ \ \ \ \ printf(\textcolor{stringliteral}{"{}finish\ exitting\ parsing\(\backslash\)nSTATE:\%d\(\backslash\)n"{}},state);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00309}00309\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8c_source_l00310}00310\ \}}
|
||||
|
||||
\end{DoxyCode}
|
||||
312
doc/latex/config_8h.tex
Normal file
312
doc/latex/config_8h.tex
Normal file
@@ -0,0 +1,312 @@
|
||||
\doxysection{config.\+h File Reference}
|
||||
\hypertarget{config_8h}{}\label{config_8h}\index{config.h@{config.h}}
|
||||
\doxysubsubsection*{Classes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
struct \mbox{\hyperlink{structconfigEntry}{config\+Entry}}
|
||||
\end{DoxyCompactItemize}
|
||||
\doxysubsubsection*{Macros}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_ac1a724419200e9f961dc787950aecd2b}{NO\+\_\+\+SECTION}}~0
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a02f5a0519bc0372946e64d593c0c58ce}{FOUND\+\_\+\+SECTION}}~10
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_abc212059095802b47f10a6a49fd45abc}{ERROR\+\_\+\+STR}}~1001
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a39de51bdb6918a63eac8b1bb474e2b84}{ERROR\+\_\+\+MAX\+\_\+\+LEN}}~2
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\+\_\+\+ERROR}}~0
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a0000658c96c7c74c0904aafe03429a7d}{ERROR\+\_\+\+DELIMITER\+\_\+\+NOT\+\_\+\+FOUND}}~40
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a07c5dd6a63f85102afff94734b066db6}{ST\+\_\+\+INIT}}~0
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a4aa0fcd1d1c19c873711c0dbdf590f51}{ST\+\_\+\+FOUND\+\_\+\+LEFT\+\_\+\+DELIMITER}}~1
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a109ad3408cd20ac98f7063ad33ee151c}{ST\+\_\+\+FOUND\+\_\+\+RIGHT\+\_\+\+DELIMITER}}~2
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_aea1c2232d9f2837fbb565f13e5d7e8ea}{ST\+\_\+\+ERROR\+\_\+\+NOT\+\_\+\+FOUND\+\_\+\+RIGHT\+\_\+\+DELIMITER}}~3
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_afae21c34cd1bfa910d95db50f151c81c}{ST\+\_\+\+ERROR\+\_\+\+NOT\+\_\+\+FOUND\+\_\+\+LEFT\+\_\+\+DELIMITER}}~4
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a50f0255611b79622dbca5cf9c27b7f43}{ST\+\_\+\+FOUND\+\_\+\+SECTION}}~5
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a71a276bab1ecc5d309fe1593a1640d5d}{ST\+\_\+\+SKIP\+\_\+\+READ}}~6
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_a587e636e48ca212f7c964a93ae005e03}{ST\+\_\+\+FINISH}}~20
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_ad89f5843f6a9cdc6a61d5af4734cd75d}{ST\+\_\+\+ERROR\+\_\+\+GETSTRATPOS}}~30
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\+\_\+\+LEN\+\_\+\+SECTIONNAME}}~128
|
||||
\item
|
||||
\#define \mbox{\hyperlink{config_8h_ae0f18393ca3f7c151a4e58ae35b119f7}{ERR\+\_\+\+PARSECONFIG\+\_\+\+UNKNOWN}}~201
|
||||
\end{DoxyCompactItemize}
|
||||
\doxysubsubsection*{Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
int \mbox{\hyperlink{config_8h_acbd35a1e4b5f0eea312f8cb64f898d4b}{load\+Config}} (char \texorpdfstring{$\ast$}{*}file, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}str\+\_\+entry, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}host, int \texorpdfstring{$\ast$}{*}intervall, int size)
|
||||
\item
|
||||
int \mbox{\hyperlink{config_8h_aae86bc3f3ebba4d6aba3ca1392c0126a}{check\+Section}} (char \texorpdfstring{$\ast$}{*}str, char delimiter\+Left, char delimiter\+Right, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}section\+Name)
|
||||
\begin{DoxyCompactList}\small\item\em Here we check if the given string contains a section for example \mbox{[}SECTIONName\mbox{]} here delimiter\+Left is \mbox{[} and delimiter\+Right is \mbox{]} if a section is found, the section name will be written to section\+Name. \end{DoxyCompactList}\item
|
||||
int \mbox{\hyperlink{config_8h_a699e504c1ab9ceffb828dbf365a5e374}{get\+Str\+At\+Pos}} (char \texorpdfstring{$\ast$}{*}str, int from\+Pos, int to\+Pos, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name, int size\+Name)
|
||||
\item
|
||||
int \mbox{\hyperlink{config_8h_ab0b547ee554d9b305adc1b2ad85080a3}{get\+Name\+Value\+Pair}} (char \texorpdfstring{$\ast$}{*}str, char left\+Delimiter\+Pos, char right\+Delimiter\+Pos, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}value, int size\+Name, int size\+Value)
|
||||
\item
|
||||
int \mbox{\hyperlink{config_8h_aa8a964c95239ab762c37713f5f53a583}{parse\+Config}} (char \texorpdfstring{$\ast$}{*}buffer, struct \mbox{\hyperlink{structconfigEntry}{config\+Entry}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}entry, int config\+Size, int \texorpdfstring{$\ast$}{*}returned\+Count)
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\doxysubsection{Macro Definition Documentation}
|
||||
\Hypertarget{config_8h_ae0f18393ca3f7c151a4e58ae35b119f7}\index{config.h@{config.h}!ERR\_PARSECONFIG\_UNKNOWN@{ERR\_PARSECONFIG\_UNKNOWN}}
|
||||
\index{ERR\_PARSECONFIG\_UNKNOWN@{ERR\_PARSECONFIG\_UNKNOWN}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ERR\_PARSECONFIG\_UNKNOWN}{ERR\_PARSECONFIG\_UNKNOWN}}
|
||||
{\footnotesize\ttfamily \label{config_8h_ae0f18393ca3f7c151a4e58ae35b119f7}
|
||||
\#define ERR\+\_\+\+PARSECONFIG\+\_\+\+UNKNOWN~201}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00028}{28}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a0000658c96c7c74c0904aafe03429a7d}\index{config.h@{config.h}!ERROR\_DELIMITER\_NOT\_FOUND@{ERROR\_DELIMITER\_NOT\_FOUND}}
|
||||
\index{ERROR\_DELIMITER\_NOT\_FOUND@{ERROR\_DELIMITER\_NOT\_FOUND}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ERROR\_DELIMITER\_NOT\_FOUND}{ERROR\_DELIMITER\_NOT\_FOUND}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a0000658c96c7c74c0904aafe03429a7d}
|
||||
\#define ERROR\+\_\+\+DELIMITER\+\_\+\+NOT\+\_\+\+FOUND~40}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00007}{7}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a39de51bdb6918a63eac8b1bb474e2b84}\index{config.h@{config.h}!ERROR\_MAX\_LEN@{ERROR\_MAX\_LEN}}
|
||||
\index{ERROR\_MAX\_LEN@{ERROR\_MAX\_LEN}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ERROR\_MAX\_LEN}{ERROR\_MAX\_LEN}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a39de51bdb6918a63eac8b1bb474e2b84}
|
||||
\#define ERROR\+\_\+\+MAX\+\_\+\+LEN~2}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00004}{4}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_abc212059095802b47f10a6a49fd45abc}\index{config.h@{config.h}!ERROR\_STR@{ERROR\_STR}}
|
||||
\index{ERROR\_STR@{ERROR\_STR}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ERROR\_STR}{ERROR\_STR}}
|
||||
{\footnotesize\ttfamily \label{config_8h_abc212059095802b47f10a6a49fd45abc}
|
||||
\#define ERROR\+\_\+\+STR~1001}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00003}{3}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a02f5a0519bc0372946e64d593c0c58ce}\index{config.h@{config.h}!FOUND\_SECTION@{FOUND\_SECTION}}
|
||||
\index{FOUND\_SECTION@{FOUND\_SECTION}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{FOUND\_SECTION}{FOUND\_SECTION}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a02f5a0519bc0372946e64d593c0c58ce}
|
||||
\#define FOUND\+\_\+\+SECTION~10}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00002}{2}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_aa454692b60895f7025f12b1e0065acea}\index{config.h@{config.h}!MAX\_LEN\_SECTIONNAME@{MAX\_LEN\_SECTIONNAME}}
|
||||
\index{MAX\_LEN\_SECTIONNAME@{MAX\_LEN\_SECTIONNAME}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{MAX\_LEN\_SECTIONNAME}{MAX\_LEN\_SECTIONNAME}}
|
||||
{\footnotesize\ttfamily \label{config_8h_aa454692b60895f7025f12b1e0065acea}
|
||||
\#define MAX\+\_\+\+LEN\+\_\+\+SECTIONNAME~128}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00025}{25}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a258bb72419ef143530a2f8f55e7d57af}\index{config.h@{config.h}!NO\_ERROR@{NO\_ERROR}}
|
||||
\index{NO\_ERROR@{NO\_ERROR}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{NO\_ERROR}{NO\_ERROR}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a258bb72419ef143530a2f8f55e7d57af}
|
||||
\#define NO\+\_\+\+ERROR~0}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00005}{5}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_ac1a724419200e9f961dc787950aecd2b}\index{config.h@{config.h}!NO\_SECTION@{NO\_SECTION}}
|
||||
\index{NO\_SECTION@{NO\_SECTION}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{NO\_SECTION}{NO\_SECTION}}
|
||||
{\footnotesize\ttfamily \label{config_8h_ac1a724419200e9f961dc787950aecd2b}
|
||||
\#define NO\+\_\+\+SECTION~0}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00001}{1}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_ad89f5843f6a9cdc6a61d5af4734cd75d}\index{config.h@{config.h}!ST\_ERROR\_GETSTRATPOS@{ST\_ERROR\_GETSTRATPOS}}
|
||||
\index{ST\_ERROR\_GETSTRATPOS@{ST\_ERROR\_GETSTRATPOS}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_ERROR\_GETSTRATPOS}{ST\_ERROR\_GETSTRATPOS}}
|
||||
{\footnotesize\ttfamily \label{config_8h_ad89f5843f6a9cdc6a61d5af4734cd75d}
|
||||
\#define ST\+\_\+\+ERROR\+\_\+\+GETSTRATPOS~30}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00022}{22}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_afae21c34cd1bfa910d95db50f151c81c}\index{config.h@{config.h}!ST\_ERROR\_NOT\_FOUND\_LEFT\_DELIMITER@{ST\_ERROR\_NOT\_FOUND\_LEFT\_DELIMITER}}
|
||||
\index{ST\_ERROR\_NOT\_FOUND\_LEFT\_DELIMITER@{ST\_ERROR\_NOT\_FOUND\_LEFT\_DELIMITER}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_ERROR\_NOT\_FOUND\_LEFT\_DELIMITER}{ST\_ERROR\_NOT\_FOUND\_LEFT\_DELIMITER}}
|
||||
{\footnotesize\ttfamily \label{config_8h_afae21c34cd1bfa910d95db50f151c81c}
|
||||
\#define ST\+\_\+\+ERROR\+\_\+\+NOT\+\_\+\+FOUND\+\_\+\+LEFT\+\_\+\+DELIMITER~4}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00015}{15}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_aea1c2232d9f2837fbb565f13e5d7e8ea}\index{config.h@{config.h}!ST\_ERROR\_NOT\_FOUND\_RIGHT\_DELIMITER@{ST\_ERROR\_NOT\_FOUND\_RIGHT\_DELIMITER}}
|
||||
\index{ST\_ERROR\_NOT\_FOUND\_RIGHT\_DELIMITER@{ST\_ERROR\_NOT\_FOUND\_RIGHT\_DELIMITER}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_ERROR\_NOT\_FOUND\_RIGHT\_DELIMITER}{ST\_ERROR\_NOT\_FOUND\_RIGHT\_DELIMITER}}
|
||||
{\footnotesize\ttfamily \label{config_8h_aea1c2232d9f2837fbb565f13e5d7e8ea}
|
||||
\#define ST\+\_\+\+ERROR\+\_\+\+NOT\+\_\+\+FOUND\+\_\+\+RIGHT\+\_\+\+DELIMITER~3}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00014}{14}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a587e636e48ca212f7c964a93ae005e03}\index{config.h@{config.h}!ST\_FINISH@{ST\_FINISH}}
|
||||
\index{ST\_FINISH@{ST\_FINISH}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_FINISH}{ST\_FINISH}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a587e636e48ca212f7c964a93ae005e03}
|
||||
\#define ST\+\_\+\+FINISH~20}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00019}{19}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a4aa0fcd1d1c19c873711c0dbdf590f51}\index{config.h@{config.h}!ST\_FOUND\_LEFT\_DELIMITER@{ST\_FOUND\_LEFT\_DELIMITER}}
|
||||
\index{ST\_FOUND\_LEFT\_DELIMITER@{ST\_FOUND\_LEFT\_DELIMITER}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_FOUND\_LEFT\_DELIMITER}{ST\_FOUND\_LEFT\_DELIMITER}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a4aa0fcd1d1c19c873711c0dbdf590f51}
|
||||
\#define ST\+\_\+\+FOUND\+\_\+\+LEFT\+\_\+\+DELIMITER~1}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00012}{12}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a109ad3408cd20ac98f7063ad33ee151c}\index{config.h@{config.h}!ST\_FOUND\_RIGHT\_DELIMITER@{ST\_FOUND\_RIGHT\_DELIMITER}}
|
||||
\index{ST\_FOUND\_RIGHT\_DELIMITER@{ST\_FOUND\_RIGHT\_DELIMITER}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_FOUND\_RIGHT\_DELIMITER}{ST\_FOUND\_RIGHT\_DELIMITER}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a109ad3408cd20ac98f7063ad33ee151c}
|
||||
\#define ST\+\_\+\+FOUND\+\_\+\+RIGHT\+\_\+\+DELIMITER~2}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00013}{13}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a50f0255611b79622dbca5cf9c27b7f43}\index{config.h@{config.h}!ST\_FOUND\_SECTION@{ST\_FOUND\_SECTION}}
|
||||
\index{ST\_FOUND\_SECTION@{ST\_FOUND\_SECTION}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_FOUND\_SECTION}{ST\_FOUND\_SECTION}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a50f0255611b79622dbca5cf9c27b7f43}
|
||||
\#define ST\+\_\+\+FOUND\+\_\+\+SECTION~5}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00016}{16}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a07c5dd6a63f85102afff94734b066db6}\index{config.h@{config.h}!ST\_INIT@{ST\_INIT}}
|
||||
\index{ST\_INIT@{ST\_INIT}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_INIT}{ST\_INIT}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a07c5dd6a63f85102afff94734b066db6}
|
||||
\#define ST\+\_\+\+INIT~0}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00011}{11}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{config_8h_a71a276bab1ecc5d309fe1593a1640d5d}\index{config.h@{config.h}!ST\_SKIP\_READ@{ST\_SKIP\_READ}}
|
||||
\index{ST\_SKIP\_READ@{ST\_SKIP\_READ}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{ST\_SKIP\_READ}{ST\_SKIP\_READ}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a71a276bab1ecc5d309fe1593a1640d5d}
|
||||
\#define ST\+\_\+\+SKIP\+\_\+\+READ~6}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00017}{17}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
|
||||
|
||||
\doxysubsection{Function Documentation}
|
||||
\Hypertarget{config_8h_aae86bc3f3ebba4d6aba3ca1392c0126a}\index{config.h@{config.h}!checkSection@{checkSection}}
|
||||
\index{checkSection@{checkSection}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{checkSection()}{checkSection()}}
|
||||
{\footnotesize\ttfamily \label{config_8h_aae86bc3f3ebba4d6aba3ca1392c0126a}
|
||||
int check\+Section (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{str}{, }\item[{char}]{delimiter\+Left}{, }\item[{char}]{delimiter\+Right}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{section\+Name}{}\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Here we check if the given string contains a section for example \mbox{[}SECTIONName\mbox{]} here delimiter\+Left is \mbox{[} and delimiter\+Right is \mbox{]} if a section is found, the section name will be written to section\+Name.
|
||||
|
||||
Input\+:
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em char} & \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}str\+: the string to check \\
|
||||
\hline
|
||||
{\em char} & delimiter\+Left\+: the left delimiter to check for \\
|
||||
\hline
|
||||
{\em char} & delimiter\+Right\+: the right delimiter to check for\\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
Output\+:
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em char} & \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}section\+Name\+: if found the section Name of the section\\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
Return\+:
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em int} & status\+\_\+code\+: one of the following values\+: \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8c_source_l00024}{24}} of file \mbox{\hyperlink{config_8c_source}{config.\+c}}.
|
||||
|
||||
\Hypertarget{config_8h_ab0b547ee554d9b305adc1b2ad85080a3}\index{config.h@{config.h}!getNameValuePair@{getNameValuePair}}
|
||||
\index{getNameValuePair@{getNameValuePair}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{getNameValuePair()}{getNameValuePair()}}
|
||||
{\footnotesize\ttfamily \label{config_8h_ab0b547ee554d9b305adc1b2ad85080a3}
|
||||
int get\+Name\+Value\+Pair (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{str}{, }\item[{char}]{left\+Delimiter\+Pos}{, }\item[{char}]{right\+Delimiter\+Pos}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{name}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{value}{, }\item[{int}]{size\+Name}{, }\item[{int}]{size\+Value}{}\end{DoxyParamCaption})}
|
||||
|
||||
Here we get a "{}pair"{} of data, parsed from \texorpdfstring{$\ast$}{*}str, witch consists of a keyname and a keyvalue. These are written to the pointers at char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name and char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}value. These pair can be in the form of\+: ex1\+: NAME=VALUE \texorpdfstring{$^\wedge$}{\string^} \texorpdfstring{$^\wedge$}{\string^} \texorpdfstring{$\vert$}{|} Here we have no delimiter this means right\+Delimiter\+Pos must be NULL This is the left delimiter ex2\+: name(value) \texorpdfstring{$^\wedge$}{\string^} \texorpdfstring{$^\wedge$}{\string^} \texorpdfstring{$\vert$}{|} This is the right\+Delimiter\+Pos and must be \textquotesingle{})\textquotesingle{} This is left\+Delimiter\+Pos which must be \textquotesingle{}(\textquotesingle{}
|
||||
|
||||
Input\+: char \texorpdfstring{$\ast$}{*}str\+: the line in the form of a string where a key value pair is stored char left\+Delimiter\+Pos\+: the left delimiter for example \textquotesingle{}=\textquotesingle{} char right\+Delimiter\+Pos\+: the right delimiter can be NULL in most cases, if NULL we assume that there is only one delimiter, which is in this case the left\+Delimiter\+Pos Output\+: char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name\+: The address where we store the name of the Key char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}value\+: The address where we store the key value int size\+Name\+: for size checking against memory allocated at \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name int size\+Value\+: for size checking against memory allocated at \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}value
|
||||
|
||||
Return\+: will return NO\+\_\+\+ERROR (0) if successfull. If not it will return the error of the subroutine
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8c_source_l00151}{151}} of file \mbox{\hyperlink{config_8c_source}{config.\+c}}.
|
||||
|
||||
\Hypertarget{config_8h_a699e504c1ab9ceffb828dbf365a5e374}\index{config.h@{config.h}!getStrAtPos@{getStrAtPos}}
|
||||
\index{getStrAtPos@{getStrAtPos}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{getStrAtPos()}{getStrAtPos()}}
|
||||
{\footnotesize\ttfamily \label{config_8h_a699e504c1ab9ceffb828dbf365a5e374}
|
||||
int get\+Str\+At\+Pos (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{str}{, }\item[{int}]{from\+Pos}{, }\item[{int}]{to\+Pos}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{name}{, }\item[{int}]{size\+Name}{}\end{DoxyParamCaption})}
|
||||
|
||||
Here we get / cut from from\+Pos to to\+Pos and write it to an address
|
||||
|
||||
Input\+: char \texorpdfstring{$\ast$}{*}str\+: the string to cut int from\+Pos\+: from which position we want to copy, the pos is included and zero indexed int to\+Pos\+: to which position we want to copy, the pos is included and zero indexed Output\+: char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name\+: here we will write the section name to Input\+: int size\+Name\+: the size of the user allocated buffer at \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}name
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8c_source_l00098}{98}} of file \mbox{\hyperlink{config_8c_source}{config.\+c}}.
|
||||
|
||||
\Hypertarget{config_8h_acbd35a1e4b5f0eea312f8cb64f898d4b}\index{config.h@{config.h}!loadConfig@{loadConfig}}
|
||||
\index{loadConfig@{loadConfig}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{loadConfig()}{loadConfig()}}
|
||||
{\footnotesize\ttfamily \label{config_8h_acbd35a1e4b5f0eea312f8cb64f898d4b}
|
||||
int load\+Config (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{file}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{str\+\_\+entry}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{host}{, }\item[{int \texorpdfstring{$\ast$}{*}}]{intervall}{, }\item[{int}]{size}{}\end{DoxyParamCaption})}
|
||||
|
||||
\Hypertarget{config_8h_aa8a964c95239ab762c37713f5f53a583}\index{config.h@{config.h}!parseConfig@{parseConfig}}
|
||||
\index{parseConfig@{parseConfig}!config.h@{config.h}}
|
||||
\doxysubsubsection{\texorpdfstring{parseConfig()}{parseConfig()}}
|
||||
{\footnotesize\ttfamily \label{config_8h_aa8a964c95239ab762c37713f5f53a583}
|
||||
int parse\+Config (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{original\+Buffer}{, }\item[{struct \mbox{\hyperlink{structconfigEntry}{config\+Entry}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{entry}{, }\item[{int}]{config\+Size\+Count}{, }\item[{int \texorpdfstring{$\ast$}{*}}]{returned\+Count}{}\end{DoxyParamCaption})}
|
||||
|
||||
Given a null terminated buffer of content(ex. from a file) an parse it with a default syntax of\+: Sections -\/\texorpdfstring{$>$}{>} \mbox{[}SECTIONNAME\mbox{]} name / value -\/\texorpdfstring{$>$}{>} name=value
|
||||
|
||||
Input\+: char \texorpdfstring{$\ast$}{*}original\+Buffer\+: the buffer which holds the string for parsing. struct \doxylink{structconfigEntry}{config\+Entry} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}entry\+: a user allocated buffer to which we write the parsed config data. int config\+Size\+Count\+: the user allocated size of \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}entry. Output\+: int \texorpdfstring{$\ast$}{*}returned\+Count\+: to this variable the function writes the count of struct, which will be required to store all alavaible data.
|
||||
|
||||
Note\+: The funtion returns the maximum allowed data structures, determined by config\+Size\+Count. All data which exceeds will be dropped. To get the whole data we run the funtion a second time with the realloced config\+Size\+Count in the size of \mbox{[}returned\+Count\mbox{]} structures.
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8c_source_l00215}{215}} of file \mbox{\hyperlink{config_8c_source}{config.\+c}}.
|
||||
|
||||
49
doc/latex/config_8h_source.tex
Normal file
49
doc/latex/config_8h_source.tex
Normal file
@@ -0,0 +1,49 @@
|
||||
\doxysection{config.\+h}
|
||||
\hypertarget{config_8h_source}{}\label{config_8h_source}\mbox{\hyperlink{config_8h}{Go to the documentation of this file.}}
|
||||
\begin{DoxyCode}{0}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00001}\mbox{\hyperlink{config_8h_ac1a724419200e9f961dc787950aecd2b}{00001}}\ \textcolor{preprocessor}{\#define\ NO\_SECTION\ 0}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00002}\mbox{\hyperlink{config_8h_a02f5a0519bc0372946e64d593c0c58ce}{00002}}\ \textcolor{preprocessor}{\#define\ FOUND\_SECTION\ 10}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00003}\mbox{\hyperlink{config_8h_abc212059095802b47f10a6a49fd45abc}{00003}}\ \textcolor{preprocessor}{\#define\ ERROR\_STR\ 1001}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00004}\mbox{\hyperlink{config_8h_a39de51bdb6918a63eac8b1bb474e2b84}{00004}}\ \textcolor{preprocessor}{\#define\ ERROR\_MAX\_LEN\ 2}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00005}\mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{00005}}\ \textcolor{preprocessor}{\#define\ NO\_ERROR\ 0}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00006}00006\ \textcolor{comment}{//ERROR\ DELIMITER}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00007}\mbox{\hyperlink{config_8h_a0000658c96c7c74c0904aafe03429a7d}{00007}}\ \textcolor{preprocessor}{\#define\ ERROR\_DELIMITER\_NOT\_FOUND\ 40}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00008}00008\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00009}00009\ \textcolor{comment}{//State\ Machine}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00010}00010\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00011}\mbox{\hyperlink{config_8h_a07c5dd6a63f85102afff94734b066db6}{00011}}\ \textcolor{preprocessor}{\#define\ ST\_INIT\ 0}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00012}\mbox{\hyperlink{config_8h_a4aa0fcd1d1c19c873711c0dbdf590f51}{00012}}\ \textcolor{preprocessor}{\#define\ ST\_FOUND\_LEFT\_DELIMITER\ 1}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00013}\mbox{\hyperlink{config_8h_a109ad3408cd20ac98f7063ad33ee151c}{00013}}\ \textcolor{preprocessor}{\#define\ ST\_FOUND\_RIGHT\_DELIMITER\ 2}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00014}\mbox{\hyperlink{config_8h_aea1c2232d9f2837fbb565f13e5d7e8ea}{00014}}\ \textcolor{preprocessor}{\#define\ ST\_ERROR\_NOT\_FOUND\_RIGHT\_DELIMITER\ 3}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00015}\mbox{\hyperlink{config_8h_afae21c34cd1bfa910d95db50f151c81c}{00015}}\ \textcolor{preprocessor}{\#define\ ST\_ERROR\_NOT\_FOUND\_LEFT\_DELIMITER\ 4}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00016}\mbox{\hyperlink{config_8h_a50f0255611b79622dbca5cf9c27b7f43}{00016}}\ \textcolor{preprocessor}{\#define\ ST\_FOUND\_SECTION\ 5}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00017}\mbox{\hyperlink{config_8h_a71a276bab1ecc5d309fe1593a1640d5d}{00017}}\ \textcolor{preprocessor}{\#define\ ST\_SKIP\_READ\ 6}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00018}00018\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00019}\mbox{\hyperlink{config_8h_a587e636e48ca212f7c964a93ae005e03}{00019}}\ \textcolor{preprocessor}{\#define\ ST\_FINISH\ 20}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00020}00020\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00021}00021\ \textcolor{comment}{//state\ machine\ ERROR}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00022}\mbox{\hyperlink{config_8h_ad89f5843f6a9cdc6a61d5af4734cd75d}{00022}}\ \textcolor{preprocessor}{\#define\ ST\_ERROR\_GETSTRATPOS\ 30}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00023}00023\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00024}00024\ \textcolor{comment}{//LIMITS}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00025}\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{00025}}\ \textcolor{preprocessor}{\#define\ MAX\_LEN\_SECTIONNAME\ 128}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00026}00026\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00027}00027\ \textcolor{comment}{//error\ parseConfig}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00028}\mbox{\hyperlink{config_8h_ae0f18393ca3f7c151a4e58ae35b119f7}{00028}}\ \textcolor{preprocessor}{\#define\ ERR\_PARSECONFIG\_UNKNOWN\ 201}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00029}00029\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00030}\mbox{\hyperlink{structconfigEntry}{00030}}\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structconfigEntry}{configEntry}}}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00031}00031\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00032}\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{00032}}\ \ \ \ \ \textcolor{keywordtype}{char}\ *\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00033}\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{00033}}\ \ \ \ \ \textcolor{keywordtype}{char}\ *\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00034}\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{00034}}\ \ \ \ \ \textcolor{keywordtype}{char}\ *\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00035}00035\ \};}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00036}00036\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00037}00037\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00038}\mbox{\hyperlink{config_8h_acbd35a1e4b5f0eea312f8cb64f898d4b}{00038}}\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8h_acbd35a1e4b5f0eea312f8cb64f898d4b}{loadConfig}}(\textcolor{keywordtype}{char}\ *file,\ \textcolor{keywordtype}{char}\ **str\_entry,\textcolor{keywordtype}{char}\ **host,\textcolor{keywordtype}{int}\ *intervall,\textcolor{keywordtype}{int}\ size);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00039}00039\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8h_aae86bc3f3ebba4d6aba3ca1392c0126a}{checkSection}}(\textcolor{keywordtype}{char}\ *str,\textcolor{keywordtype}{char}\ delimiterLeft,\textcolor{keywordtype}{char}\ delimiterRight,\textcolor{keywordtype}{char}\ **sectionName);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00040}00040\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00041}00041\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8h_a699e504c1ab9ceffb828dbf365a5e374}{getStrAtPos}}(\textcolor{keywordtype}{char}\ *str,\textcolor{keywordtype}{int}\ fromPos,\textcolor{keywordtype}{int}\ toPos,\ \textcolor{keywordtype}{char}\ **name,\textcolor{keywordtype}{int}\ sizeName);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00042}00042\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8h_ab0b547ee554d9b305adc1b2ad85080a3}{getNameValuePair}}(\textcolor{keywordtype}{char}\ *str,\textcolor{keywordtype}{char}\ leftDelimiterPos,\textcolor{keywordtype}{char}\ rightDelimiterPos,\textcolor{keywordtype}{char}\ **name,\textcolor{keywordtype}{char}\ **value,\textcolor{keywordtype}{int}\ sizeName,\textcolor{keywordtype}{int}\ sizeValue);}
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00043}00043\ }
|
||||
\DoxyCodeLine{\Hypertarget{config_8h_source_l00044}00044\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{config_8h_aa8a964c95239ab762c37713f5f53a583}{parseConfig}}(\textcolor{keywordtype}{char}\ *buffer,\textcolor{keyword}{struct}\ \mbox{\hyperlink{structconfigEntry}{configEntry}}\ **entry,\textcolor{keywordtype}{int}\ configSize,\textcolor{keywordtype}{int}\ *returnedCount);}
|
||||
|
||||
\end{DoxyCode}
|
||||
714
doc/latex/doxygen.sty
Normal file
714
doc/latex/doxygen.sty
Normal file
@@ -0,0 +1,714 @@
|
||||
\NeedsTeXFormat{LaTeX2e}
|
||||
\ProvidesPackage{doxygen}
|
||||
|
||||
% Packages used by this style file
|
||||
\RequirePackage{alltt}
|
||||
%%\RequirePackage{array} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package
|
||||
\RequirePackage{calc}
|
||||
\RequirePackage{float}
|
||||
%%\RequirePackage{ifthen} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package
|
||||
\RequirePackage{verbatim}
|
||||
\RequirePackage[table]{xcolor}
|
||||
\RequirePackage{longtable_doxygen}
|
||||
\RequirePackage{tabu_doxygen}
|
||||
\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~}}\obeyspaces%
|
||||
}%
|
||||
\vspace{2pt}%
|
||||
}{%
|
||||
\normalfont%
|
||||
\normalsize%
|
||||
\settowidth{\CodeWidthChar}{?}%
|
||||
\settoheight{\CodeHeightChar}{?}%
|
||||
}
|
||||
|
||||
% 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}%
|
||||
}
|
||||
|
||||
% Used by parameter lists
|
||||
\newenvironment{DoxyParams}[2][]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\ifthenelse{\equal{#1}{}}%
|
||||
{\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description
|
||||
{\ifthenelse{\equal{#1}{1}}%
|
||||
{\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc
|
||||
{\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc
|
||||
}
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu*}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used for fields of simple structs
|
||||
\newenvironment{DoxyFields}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}%
|
||||
\multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu*}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used for fields simple class style enums
|
||||
\newenvironment{DoxyEnumFields}[2][]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\ifthenelse{\equal{#1}{2}}%
|
||||
{\begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}}%
|
||||
{\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,r]|X[-1,l]|}}% with init value
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu*}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% 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
|
||||
\newenvironment{DoxyRetVals}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu*}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used by exception lists
|
||||
\newenvironment{DoxyExceptions}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu*}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used by template parameter lists
|
||||
\newenvironment{DoxyTemplParams}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu*}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% 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}%
|
||||
\newenvironment{TabularC}[1]%
|
||||
{\tabulinesep=1mm
|
||||
\begin{longtabu*}spread 0pt [c]{*#1{|X[-1]}|}}%
|
||||
{\end{longtabu*}\par}%
|
||||
|
||||
\newenvironment{TabularNC}[1]%
|
||||
{\begin{tabu}spread 0pt [l]{*#1{|X[-1]}|}}%
|
||||
{\end{tabu}\par}%
|
||||
|
||||
% Used for member group headers
|
||||
\newenvironment{Indent}{%
|
||||
\begin{list}{}{%
|
||||
\setlength{\leftmargin}{0.5cm}%
|
||||
}%
|
||||
\item[]\ignorespaces%
|
||||
}{%
|
||||
\unskip%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used when hyperlinks are turned on
|
||||
\newcommand{\doxylink}[2]{%
|
||||
\mbox{\hyperlink{#1}{#2}}%
|
||||
}
|
||||
|
||||
% 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]{%
|
||||
\mbox{\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
doc/latex/etoc_doxygen.sty
Normal file
2178
doc/latex/etoc_doxygen.sty
Normal file
File diff suppressed because it is too large
Load Diff
22
doc/latex/file_8c.tex
Normal file
22
doc/latex/file_8c.tex
Normal file
@@ -0,0 +1,22 @@
|
||||
\doxysection{file.\+c File Reference}
|
||||
\hypertarget{file_8c}{}\label{file_8c}\index{file.c@{file.c}}
|
||||
{\ttfamily \#include "{}file.\+h"{}}\newline
|
||||
{\ttfamily \#include $<$stdio.\+h$>$}\newline
|
||||
\doxysubsubsection*{Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
int \mbox{\hyperlink{file_8c_a415337a87938760b49ba4c0d74ab6c6a}{get\+File}} (char \texorpdfstring{$\ast$}{*}fname, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}str\+Content, int cb\+Size, long \texorpdfstring{$\ast$}{*}needed\+Size)
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\doxysubsection{Function Documentation}
|
||||
\Hypertarget{file_8c_a415337a87938760b49ba4c0d74ab6c6a}\index{file.c@{file.c}!getFile@{getFile}}
|
||||
\index{getFile@{getFile}!file.c@{file.c}}
|
||||
\doxysubsubsection{\texorpdfstring{getFile()}{getFile()}}
|
||||
{\footnotesize\ttfamily \label{file_8c_a415337a87938760b49ba4c0d74ab6c6a}
|
||||
int get\+File (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{fname}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{str\+Content}{, }\item[{int}]{cb\+Size}{, }\item[{long \texorpdfstring{$\ast$}{*}}]{needed\+Size}{}\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{file_8c_source_l00017}{17}} of file \mbox{\hyperlink{file_8c_source}{file.\+c}}.
|
||||
|
||||
69
doc/latex/file_8c_source.tex
Normal file
69
doc/latex/file_8c_source.tex
Normal file
@@ -0,0 +1,69 @@
|
||||
\doxysection{file.\+c}
|
||||
\hypertarget{file_8c_source}{}\label{file_8c_source}\mbox{\hyperlink{file_8c}{Go to the documentation of this file.}}
|
||||
\begin{DoxyCode}{0}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00001}00001\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{file_8h}{file.h}}"{}}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00002}00002\ \textcolor{preprocessor}{\#include\ <stdio.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00003}00003\ \textcolor{comment}{/*}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00004}00004\ \textcolor{comment}{\ *\ Here\ we\ load\ a\ file\ and\ write\ the\ file\ as\ string\ to\ a\ memory\ address:}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00005}00005\ \textcolor{comment}{\ *\ Input:}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00006}00006\ \textcolor{comment}{\ *\ \ \ \ \ \ char*\ fname:\ the\ name\ of\ the\ file\ to\ open}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00007}00007\ \textcolor{comment}{\ *\ \ \ \ \ \ int\ cbSize:\ the\ size\ of\ the\ strContent}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00008}00008\ \textcolor{comment}{\ *\ Output:}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00009}00009\ \textcolor{comment}{\ *\ \ \ \ \ \ char\ **strContent:\ a\ pointer\ to\ a\ address\ where\ you\ have\ to\ allocate\ enougth\ memory\ to\ store\ the\ whole\ file}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00010}00010\ \textcolor{comment}{\ *\ \ \ \ \ \ int\ neededSize:\ this\ returns\ the\ needed\ size\ of\ the\ buffer\ strContent}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00011}00011\ \textcolor{comment}{\ *}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00012}00012\ \textcolor{comment}{\ *\ \ Note:}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00013}00013\ \textcolor{comment}{\ *\ \ \ \ \ \ to\ get\ the\ size\ define\ strContent\ as\ NULL,\ then\ the\ needed\ size\ will\ return\ the\ needed\ buffersize}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00014}00014\ \textcolor{comment}{\ *}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00015}00015\ \textcolor{comment}{\ *}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00016}00016\ \textcolor{comment}{\ */}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00017}\mbox{\hyperlink{file_8c_a415337a87938760b49ba4c0d74ab6c6a}{00017}}\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{file_8c_a415337a87938760b49ba4c0d74ab6c6a}{getFile}}(\textcolor{keywordtype}{char}\ *fname,\ \textcolor{keywordtype}{char}\ **strContent,\textcolor{keywordtype}{int}\ cbSize,\textcolor{keywordtype}{long}\ *neededSize)}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00018}00018\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00019}00019\ \ \ \ \ FILE\ *hfile\ =\ fopen(fname,\textcolor{stringliteral}{"{}r"{}});}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00020}00020\ \ \ \ \ \textcolor{keywordtype}{long}\ file\_size=0;}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00021}00021\ \ \ \ \ \textcolor{keywordtype}{int}\ ret=0;}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00022}00022\ \ \ \ \ \textcolor{keywordflow}{if}(hfile\ ==\ NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00023}00023\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00024}00024\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{file_8h_a44d189cf44f6ef2cb48c2f22c7824469}{FILE\_ERROR\_OPEN}};}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00025}00025\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00026}00026\ \ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00027}00027\ \ \ \ \ printf(\textcolor{stringliteral}{"{}file\ openend:\%s"{}},fname);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00028}00028\ \ \ \ fseek(hfile,0,SEEK\_END);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00029}00029\ \ \ \ file\_size\ =\ ftell(hfile);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00030}00030\ \ \ \ \ \textcolor{keywordflow}{if}(strContent\ ==\ NULL)\ \textcolor{comment}{//we\ must\ determine\ the\ size\ and\ return\ to\ neededSize}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00031}00031\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00032}00032\ \ \ \ \ \ \ \ \ *neededSize\ =\ file\_size+1;}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00033}00033\ \ \ \ \ \ \ \ \ fclose(hfile);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00034}00034\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}};}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00035}00035\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00036}00036\ }
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00037}00037\ \ \ \ \ \textcolor{keywordflow}{if}(cbSize\ <\ file\_size)}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00038}00038\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00039}00039\ \ \ \ \ \ \ \ \ *neededSize\ =\ file\_size+1;\ \textcolor{comment}{//null\ terminator}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00040}00040\ \ \ \ \ \ \ \ \ fclose(hfile);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00041}00041\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{file_8h_a12f43bc1d8b150bb55c18877bbe612ac}{FILE\_ERROR\_STRCONTENT\_TO\_SMALL}};}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00042}00042\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00043}00043\ }
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00044}00044\ \ \ \ \ fseek(hfile,0,SEEK\_SET);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00045}00045\ \ \ \ \ ret=fread(*strContent,file\_size,1,hfile);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00046}00046\ \ \ \ \ \textcolor{keywordflow}{if}(ret\ !=\ 1)}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00047}00047\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00048}00048\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Reading\ error\ read\ and\ should\ read\ missmatch\(\backslash\)nnumber\ written\ elements:\%d\(\backslash\)n"{}},}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00049}00049\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ret);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00050}00050\ \ \ \ \ \ \ \ \ fclose(hfile);}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00051}00051\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{file_8h_aa161b7390609303815b39df4a4850cfc}{FILE\_ERROR\_READ\_MISMATCH}};}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00052}00052\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00053}00053\ \ \ \ \ \textcolor{comment}{//buffer\ end-\/1\ =\ \(\backslash\)0}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00054}00054\ \ \ \ \ \textcolor{comment}{//buffer\ end-\/2\ =\ \(\backslash\)n}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00055}00055\ \ \ \ \ \textcolor{comment}{//buffer\ end-\/3\ =\ last\ character}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00056}00056\ \ \ \ \ printf(\textcolor{stringliteral}{"{}strcontent:\ \%ld,\ [\%c]\(\backslash\)n"{}},*neededSize,*(*strContent+\ *neededSize-\/3));}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00057}00057\ \ \ \ \ *(*strContent\ +\ *neededSize\ -\/1)\ =\textcolor{charliteral}{'\(\backslash\)0'};}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00058}00058\ \ \ \ \ printf(\textcolor{stringliteral}{"{}after\ zero\ assign:\ \%ld,\ \%s\(\backslash\)n"{}},*neededSize,(*strContent+\ *neededSize-\/1));}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00059}00059\ \ \ \ \ \textcolor{comment}{//printf("{}content:\%s"{},*strContent);}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00060}00060\ \ \ \ \ fclose(hfile);\ \ \ \ \ \ \ \ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00061}00061\ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}};}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00062}00062\ \}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00063}00063\ }
|
||||
\DoxyCodeLine{\Hypertarget{file_8c_source_l00064}00064\ }
|
||||
|
||||
\end{DoxyCode}
|
||||
74
doc/latex/file_8h.tex
Normal file
74
doc/latex/file_8h.tex
Normal file
@@ -0,0 +1,74 @@
|
||||
\doxysection{file.\+h File Reference}
|
||||
\hypertarget{file_8h}{}\label{file_8h}\index{file.h@{file.h}}
|
||||
\doxysubsubsection*{Macros}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\#define \mbox{\hyperlink{file_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\+\_\+\+ERROR}}~0
|
||||
\item
|
||||
\#define \mbox{\hyperlink{file_8h_a44d189cf44f6ef2cb48c2f22c7824469}{FILE\+\_\+\+ERROR\+\_\+\+OPEN}}~11
|
||||
\item
|
||||
\#define \mbox{\hyperlink{file_8h_a12f43bc1d8b150bb55c18877bbe612ac}{FILE\+\_\+\+ERROR\+\_\+\+STRCONTENT\+\_\+\+TO\+\_\+\+SMALL}}~12
|
||||
\item
|
||||
\#define \mbox{\hyperlink{file_8h_aa161b7390609303815b39df4a4850cfc}{FILE\+\_\+\+ERROR\+\_\+\+READ\+\_\+\+MISMATCH}}~13
|
||||
\end{DoxyCompactItemize}
|
||||
\doxysubsubsection*{Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
int \mbox{\hyperlink{file_8h_a415337a87938760b49ba4c0d74ab6c6a}{get\+File}} (char \texorpdfstring{$\ast$}{*}fname, char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}str\+Content, int cb\+Size, long \texorpdfstring{$\ast$}{*}needed\+Size)
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\doxysubsection{Macro Definition Documentation}
|
||||
\Hypertarget{file_8h_a44d189cf44f6ef2cb48c2f22c7824469}\index{file.h@{file.h}!FILE\_ERROR\_OPEN@{FILE\_ERROR\_OPEN}}
|
||||
\index{FILE\_ERROR\_OPEN@{FILE\_ERROR\_OPEN}!file.h@{file.h}}
|
||||
\doxysubsubsection{\texorpdfstring{FILE\_ERROR\_OPEN}{FILE\_ERROR\_OPEN}}
|
||||
{\footnotesize\ttfamily \label{file_8h_a44d189cf44f6ef2cb48c2f22c7824469}
|
||||
\#define FILE\+\_\+\+ERROR\+\_\+\+OPEN~11}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{file_8h_source_l00004}{4}} of file \mbox{\hyperlink{file_8h_source}{file.\+h}}.
|
||||
|
||||
\Hypertarget{file_8h_aa161b7390609303815b39df4a4850cfc}\index{file.h@{file.h}!FILE\_ERROR\_READ\_MISMATCH@{FILE\_ERROR\_READ\_MISMATCH}}
|
||||
\index{FILE\_ERROR\_READ\_MISMATCH@{FILE\_ERROR\_READ\_MISMATCH}!file.h@{file.h}}
|
||||
\doxysubsubsection{\texorpdfstring{FILE\_ERROR\_READ\_MISMATCH}{FILE\_ERROR\_READ\_MISMATCH}}
|
||||
{\footnotesize\ttfamily \label{file_8h_aa161b7390609303815b39df4a4850cfc}
|
||||
\#define FILE\+\_\+\+ERROR\+\_\+\+READ\+\_\+\+MISMATCH~13}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{file_8h_source_l00006}{6}} of file \mbox{\hyperlink{file_8h_source}{file.\+h}}.
|
||||
|
||||
\Hypertarget{file_8h_a12f43bc1d8b150bb55c18877bbe612ac}\index{file.h@{file.h}!FILE\_ERROR\_STRCONTENT\_TO\_SMALL@{FILE\_ERROR\_STRCONTENT\_TO\_SMALL}}
|
||||
\index{FILE\_ERROR\_STRCONTENT\_TO\_SMALL@{FILE\_ERROR\_STRCONTENT\_TO\_SMALL}!file.h@{file.h}}
|
||||
\doxysubsubsection{\texorpdfstring{FILE\_ERROR\_STRCONTENT\_TO\_SMALL}{FILE\_ERROR\_STRCONTENT\_TO\_SMALL}}
|
||||
{\footnotesize\ttfamily \label{file_8h_a12f43bc1d8b150bb55c18877bbe612ac}
|
||||
\#define FILE\+\_\+\+ERROR\+\_\+\+STRCONTENT\+\_\+\+TO\+\_\+\+SMALL~12}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{file_8h_source_l00005}{5}} of file \mbox{\hyperlink{file_8h_source}{file.\+h}}.
|
||||
|
||||
\Hypertarget{file_8h_a258bb72419ef143530a2f8f55e7d57af}\index{file.h@{file.h}!NO\_ERROR@{NO\_ERROR}}
|
||||
\index{NO\_ERROR@{NO\_ERROR}!file.h@{file.h}}
|
||||
\doxysubsubsection{\texorpdfstring{NO\_ERROR}{NO\_ERROR}}
|
||||
{\footnotesize\ttfamily \label{file_8h_a258bb72419ef143530a2f8f55e7d57af}
|
||||
\#define NO\+\_\+\+ERROR~0}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{file_8h_source_l00001}{1}} of file \mbox{\hyperlink{file_8h_source}{file.\+h}}.
|
||||
|
||||
|
||||
|
||||
\doxysubsection{Function Documentation}
|
||||
\Hypertarget{file_8h_a415337a87938760b49ba4c0d74ab6c6a}\index{file.h@{file.h}!getFile@{getFile}}
|
||||
\index{getFile@{getFile}!file.h@{file.h}}
|
||||
\doxysubsubsection{\texorpdfstring{getFile()}{getFile()}}
|
||||
{\footnotesize\ttfamily \label{file_8h_a415337a87938760b49ba4c0d74ab6c6a}
|
||||
int get\+File (\begin{DoxyParamCaption}\item[{char \texorpdfstring{$\ast$}{*}}]{fname}{, }\item[{char \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}}]{str\+Content}{, }\item[{int}]{cb\+Size}{, }\item[{long \texorpdfstring{$\ast$}{*}}]{needed\+Size}{}\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{file_8c_source_l00017}{17}} of file \mbox{\hyperlink{file_8c_source}{file.\+c}}.
|
||||
|
||||
13
doc/latex/file_8h_source.tex
Normal file
13
doc/latex/file_8h_source.tex
Normal file
@@ -0,0 +1,13 @@
|
||||
\doxysection{file.\+h}
|
||||
\hypertarget{file_8h_source}{}\label{file_8h_source}\mbox{\hyperlink{file_8h}{Go to the documentation of this file.}}
|
||||
\begin{DoxyCode}{0}
|
||||
\DoxyCodeLine{\Hypertarget{file_8h_source_l00001}\mbox{\hyperlink{file_8h_a258bb72419ef143530a2f8f55e7d57af}{00001}}\ \textcolor{preprocessor}{\#define\ NO\_ERROR\ 0}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8h_source_l00002}00002\ }
|
||||
\DoxyCodeLine{\Hypertarget{file_8h_source_l00003}00003\ \textcolor{comment}{//ERRORS}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8h_source_l00004}\mbox{\hyperlink{file_8h_a44d189cf44f6ef2cb48c2f22c7824469}{00004}}\ \textcolor{preprocessor}{\#define\ FILE\_ERROR\_OPEN\ 11}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8h_source_l00005}\mbox{\hyperlink{file_8h_a12f43bc1d8b150bb55c18877bbe612ac}{00005}}\ \textcolor{preprocessor}{\#define\ FILE\_ERROR\_STRCONTENT\_TO\_SMALL\ 12}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8h_source_l00006}\mbox{\hyperlink{file_8h_aa161b7390609303815b39df4a4850cfc}{00006}}\ \textcolor{preprocessor}{\#define\ FILE\_ERROR\_READ\_MISMATCH\ 13}}
|
||||
\DoxyCodeLine{\Hypertarget{file_8h_source_l00007}00007\ }
|
||||
\DoxyCodeLine{\Hypertarget{file_8h_source_l00008}00008\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{file_8h_a415337a87938760b49ba4c0d74ab6c6a}{getFile}}(\textcolor{keywordtype}{char}\ *fname,\ \textcolor{keywordtype}{char}\ **strContent,\textcolor{keywordtype}{int}\ cbSize,\textcolor{keywordtype}{long}\ *neededSize);}
|
||||
|
||||
\end{DoxyCode}
|
||||
8
doc/latex/files.tex
Normal file
8
doc/latex/files.tex
Normal file
@@ -0,0 +1,8 @@
|
||||
\doxysection{File List}
|
||||
Here is a list of all files with brief descriptions\+:\begin{DoxyCompactList}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{config_8c}{config.\+c}} }{\pageref{config_8c}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{config_8h}{config.\+h}} }{\pageref{config_8h}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{file_8c}{file.\+c}} }{\pageref{file_8c}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{file_8h}{file.\+h}} }{\pageref{file_8h}}{}
|
||||
\item\contentsline{section}{\mbox{\hyperlink{test_8c}{test.\+c}} }{\pageref{test_8c}}{}
|
||||
\end{DoxyCompactList}
|
||||
459
doc/latex/longtable_doxygen.sty
Normal file
459
doc/latex/longtable_doxygen.sty
Normal file
@@ -0,0 +1,459 @@
|
||||
%%
|
||||
%% This is file `longtable.sty',
|
||||
%% generated with the docstrip utility.
|
||||
%%
|
||||
%% The original source files were:
|
||||
%%
|
||||
%% longtable.dtx (with options: `package')
|
||||
%%
|
||||
%% This is a generated file.
|
||||
%%
|
||||
%% The source is maintained by the LaTeX Project team and bug
|
||||
%% reports for it can be opened at http://latex-project.org/bugs.html
|
||||
%% (but please observe conditions on bug reports sent to that address!)
|
||||
%%
|
||||
%% Copyright 1993-2016
|
||||
%% The LaTeX3 Project and any individual authors listed elsewhere
|
||||
%% in this file.
|
||||
%%
|
||||
%% This file was generated from file(s) of the Standard LaTeX `Tools Bundle'.
|
||||
%% --------------------------------------------------------------------------
|
||||
%%
|
||||
%% It may be distributed and/or modified under the
|
||||
%% conditions of the LaTeX Project Public License, either version 1.3c
|
||||
%% 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.3c or later is part of all distributions of LaTeX
|
||||
%% version 2005/12/01 or later.
|
||||
%%
|
||||
%% This file may only be distributed together with a copy of the LaTeX
|
||||
%% `Tools Bundle'. You may however distribute the LaTeX `Tools Bundle'
|
||||
%% without such generated files.
|
||||
%%
|
||||
%% The list of all files belonging to the LaTeX `Tools Bundle' is
|
||||
%% given in the file `manifest.txt'.
|
||||
%%
|
||||
%% File: longtable.dtx Copyright (C) 1990-2001 David Carlisle
|
||||
\NeedsTeXFormat{LaTeX2e}[1995/06/01]
|
||||
\ProvidesPackage{longtable_doxygen}
|
||||
[2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen]
|
||||
\def\LT@err{\PackageError{longtable}}
|
||||
\def\LT@warn{\PackageWarning{longtable}}
|
||||
\def\LT@final@warn{%
|
||||
\AtEndDocument{%
|
||||
\LT@warn{Table \@width s have changed. Rerun LaTeX.\@gobbletwo}}%
|
||||
\global\let\LT@final@warn\relax}
|
||||
\DeclareOption{errorshow}{%
|
||||
\def\LT@warn{\PackageInfo{longtable}}}
|
||||
\DeclareOption{pausing}{%
|
||||
\def\LT@warn#1{%
|
||||
\LT@err{#1}{This is not really an error}}}
|
||||
\DeclareOption{set}{}
|
||||
\DeclareOption{final}{}
|
||||
\ProcessOptions
|
||||
\newskip\LTleft \LTleft=\fill
|
||||
\newskip\LTright \LTright=\fill
|
||||
\newskip\LTpre \LTpre=\bigskipamount
|
||||
\newskip\LTpost \LTpost=\bigskipamount
|
||||
\newcount\LTchunksize \LTchunksize=20
|
||||
\let\c@LTchunksize\LTchunksize
|
||||
\newdimen\LTcapwidth \LTcapwidth=4in
|
||||
\newbox\LT@head
|
||||
\newbox\LT@firsthead
|
||||
\newbox\LT@foot
|
||||
\newbox\LT@lastfoot
|
||||
\newcount\LT@cols
|
||||
\newcount\LT@rows
|
||||
\newcounter{LT@tables}
|
||||
\newcounter{LT@chunks}[LT@tables]
|
||||
\ifx\c@table\undefined
|
||||
\newcounter{table}
|
||||
\def\fnum@table{\tablename~\thetable}
|
||||
\fi
|
||||
\ifx\tablename\undefined
|
||||
\def\tablename{Table}
|
||||
\fi
|
||||
\newtoks\LT@p@ftn
|
||||
\mathchardef\LT@end@pen=30000
|
||||
\def\longtable{%
|
||||
\par
|
||||
\ifx\multicols\@undefined
|
||||
\else
|
||||
\ifnum\col@number>\@ne
|
||||
\@twocolumntrue
|
||||
\fi
|
||||
\fi
|
||||
\if@twocolumn
|
||||
\LT@err{longtable not in 1-column mode}\@ehc
|
||||
\fi
|
||||
\begingroup
|
||||
\@ifnextchar[\LT@array{\LT@array[x]}}
|
||||
\def\LT@array[#1]#2{%
|
||||
\refstepcounter{table}\stepcounter{LT@tables}%
|
||||
\if l#1%
|
||||
\LTleft\z@ \LTright\fill
|
||||
\else\if r#1%
|
||||
\LTleft\fill \LTright\z@
|
||||
\else\if c#1%
|
||||
\LTleft\fill \LTright\fill
|
||||
\fi\fi\fi
|
||||
\let\LT@mcol\multicolumn
|
||||
\let\LT@@tabarray\@tabarray
|
||||
\let\LT@@hl\hline
|
||||
\def\@tabarray{%
|
||||
\let\hline\LT@@hl
|
||||
\LT@@tabarray}%
|
||||
\let\\\LT@tabularcr\let\tabularnewline\\%
|
||||
\def\newpage{\noalign{\break}}%
|
||||
\def\pagebreak{\noalign{\ifnum`}=0\fi\@testopt{\LT@no@pgbk-}4}%
|
||||
\def\nopagebreak{\noalign{\ifnum`}=0\fi\@testopt\LT@no@pgbk4}%
|
||||
\let\hline\LT@hline \let\kill\LT@kill\let\caption\LT@caption
|
||||
\@tempdima\ht\strutbox
|
||||
\let\@endpbox\LT@endpbox
|
||||
\ifx\extrarowheight\@undefined
|
||||
\let\@acol\@tabacol
|
||||
\let\@classz\@tabclassz \let\@classiv\@tabclassiv
|
||||
\def\@startpbox{\vtop\LT@startpbox}%
|
||||
\let\@@startpbox\@startpbox
|
||||
\let\@@endpbox\@endpbox
|
||||
\let\LT@LL@FM@cr\@tabularcr
|
||||
\else
|
||||
\advance\@tempdima\extrarowheight
|
||||
\col@sep\tabcolsep
|
||||
\let\@startpbox\LT@startpbox\let\LT@LL@FM@cr\@arraycr
|
||||
\fi
|
||||
\setbox\@arstrutbox\hbox{\vrule
|
||||
\@height \arraystretch \@tempdima
|
||||
\@depth \arraystretch \dp \strutbox
|
||||
\@width \z@}%
|
||||
\let\@sharp##\let\protect\relax
|
||||
\begingroup
|
||||
\@mkpream{#2}%
|
||||
\xdef\LT@bchunk{%
|
||||
\global\advance\c@LT@chunks\@ne
|
||||
\global\LT@rows\z@\setbox\z@\vbox\bgroup
|
||||
\LT@setprevdepth
|
||||
\tabskip\LTleft \noexpand\halign to\hsize\bgroup
|
||||
\tabskip\z@ \@arstrut \@preamble \tabskip\LTright \cr}%
|
||||
\endgroup
|
||||
\expandafter\LT@nofcols\LT@bchunk&\LT@nofcols
|
||||
\LT@make@row
|
||||
\m@th\let\par\@empty
|
||||
\everycr{}\lineskip\z@\baselineskip\z@
|
||||
\LT@bchunk}
|
||||
\def\LT@no@pgbk#1[#2]{\penalty #1\@getpen{#2}\ifnum`{=0\fi}}
|
||||
\def\LT@start{%
|
||||
\let\LT@start\endgraf
|
||||
\endgraf\penalty\z@\vskip\LTpre
|
||||
\dimen@\pagetotal
|
||||
\advance\dimen@ \ht\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi
|
||||
\advance\dimen@ \dp\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi
|
||||
\advance\dimen@ \ht\LT@foot
|
||||
\dimen@ii\vfuzz
|
||||
\vfuzz\maxdimen
|
||||
\setbox\tw@\copy\z@
|
||||
\setbox\tw@\vsplit\tw@ to \ht\@arstrutbox
|
||||
\setbox\tw@\vbox{\unvbox\tw@}%
|
||||
\vfuzz\dimen@ii
|
||||
\advance\dimen@ \ht
|
||||
\ifdim\ht\@arstrutbox>\ht\tw@\@arstrutbox\else\tw@\fi
|
||||
\advance\dimen@\dp
|
||||
\ifdim\dp\@arstrutbox>\dp\tw@\@arstrutbox\else\tw@\fi
|
||||
\advance\dimen@ -\pagegoal
|
||||
\ifdim \dimen@>\z@\vfil\break\fi
|
||||
\global\@colroom\@colht
|
||||
\ifvoid\LT@foot\else
|
||||
\global\advance\vsize-\ht\LT@foot
|
||||
\global\advance\@colroom-\ht\LT@foot
|
||||
\dimen@\pagegoal\advance\dimen@-\ht\LT@foot\pagegoal\dimen@
|
||||
\maxdepth\z@
|
||||
\fi
|
||||
\ifvoid\LT@firsthead\copy\LT@head\else\box\LT@firsthead\fi\nobreak
|
||||
\output{\LT@output}}
|
||||
\def\endlongtable{%
|
||||
\crcr
|
||||
\noalign{%
|
||||
\let\LT@entry\LT@entry@chop
|
||||
\xdef\LT@save@row{\LT@save@row}}%
|
||||
\LT@echunk
|
||||
\LT@start
|
||||
\unvbox\z@
|
||||
\LT@get@widths
|
||||
\if@filesw
|
||||
{\let\LT@entry\LT@entry@write\immediate\write\@auxout{%
|
||||
\gdef\expandafter\noexpand
|
||||
\csname LT@\romannumeral\c@LT@tables\endcsname
|
||||
{\LT@save@row}}}%
|
||||
\fi
|
||||
\ifx\LT@save@row\LT@@save@row
|
||||
\else
|
||||
\LT@warn{Column \@width s have changed\MessageBreak
|
||||
in table \thetable}%
|
||||
\LT@final@warn
|
||||
\fi
|
||||
\endgraf\penalty -\LT@end@pen
|
||||
\ifvoid\LT@foot\else
|
||||
\global\advance\vsize\ht\LT@foot
|
||||
\global\advance\@colroom\ht\LT@foot
|
||||
\dimen@\pagegoal\advance\dimen@\ht\LT@foot\pagegoal\dimen@
|
||||
\fi
|
||||
\endgroup
|
||||
\global\@mparbottom\z@
|
||||
\endgraf\penalty\z@\addvspace\LTpost
|
||||
\ifvoid\footins\else\insert\footins{}\fi}
|
||||
\def\LT@nofcols#1&{%
|
||||
\futurelet\@let@token\LT@n@fcols}
|
||||
\def\LT@n@fcols{%
|
||||
\advance\LT@cols\@ne
|
||||
\ifx\@let@token\LT@nofcols
|
||||
\expandafter\@gobble
|
||||
\else
|
||||
\expandafter\LT@nofcols
|
||||
\fi}
|
||||
\def\LT@tabularcr{%
|
||||
\relax\iffalse{\fi\ifnum0=`}\fi
|
||||
\@ifstar
|
||||
{\def\crcr{\LT@crcr\noalign{\nobreak}}\let\cr\crcr
|
||||
\LT@t@bularcr}%
|
||||
{\LT@t@bularcr}}
|
||||
\let\LT@crcr\crcr
|
||||
\let\LT@setprevdepth\relax
|
||||
\def\LT@t@bularcr{%
|
||||
\global\advance\LT@rows\@ne
|
||||
\ifnum\LT@rows=\LTchunksize
|
||||
\gdef\LT@setprevdepth{%
|
||||
\prevdepth\z@\global
|
||||
\global\let\LT@setprevdepth\relax}%
|
||||
\expandafter\LT@xtabularcr
|
||||
\else
|
||||
\ifnum0=`{}\fi
|
||||
\expandafter\LT@LL@FM@cr
|
||||
\fi}
|
||||
\def\LT@xtabularcr{%
|
||||
\@ifnextchar[\LT@argtabularcr\LT@ntabularcr}
|
||||
\def\LT@ntabularcr{%
|
||||
\ifnum0=`{}\fi
|
||||
\LT@echunk
|
||||
\LT@start
|
||||
\unvbox\z@
|
||||
\LT@get@widths
|
||||
\LT@bchunk}
|
||||
\def\LT@argtabularcr[#1]{%
|
||||
\ifnum0=`{}\fi
|
||||
\ifdim #1>\z@
|
||||
\unskip\@xargarraycr{#1}%
|
||||
\else
|
||||
\@yargarraycr{#1}%
|
||||
\fi
|
||||
\LT@echunk
|
||||
\LT@start
|
||||
\unvbox\z@
|
||||
\LT@get@widths
|
||||
\LT@bchunk}
|
||||
\def\LT@echunk{%
|
||||
\crcr\LT@save@row\cr\egroup
|
||||
\global\setbox\@ne\lastbox
|
||||
\unskip
|
||||
\egroup}
|
||||
\def\LT@entry#1#2{%
|
||||
\ifhmode\@firstofone{&}\fi\omit
|
||||
\ifnum#1=\c@LT@chunks
|
||||
\else
|
||||
\kern#2\relax
|
||||
\fi}
|
||||
\def\LT@entry@chop#1#2{%
|
||||
\noexpand\LT@entry
|
||||
{\ifnum#1>\c@LT@chunks
|
||||
1}{0pt%
|
||||
\else
|
||||
#1}{#2%
|
||||
\fi}}
|
||||
\def\LT@entry@write{%
|
||||
\noexpand\LT@entry^^J%
|
||||
\@spaces}
|
||||
\def\LT@kill{%
|
||||
\LT@echunk
|
||||
\LT@get@widths
|
||||
\expandafter\LT@rebox\LT@bchunk}
|
||||
\def\LT@rebox#1\bgroup{%
|
||||
#1\bgroup
|
||||
\unvbox\z@
|
||||
\unskip
|
||||
\setbox\z@\lastbox}
|
||||
\def\LT@blank@row{%
|
||||
\xdef\LT@save@row{\expandafter\LT@build@blank
|
||||
\romannumeral\number\LT@cols 001 }}
|
||||
\def\LT@build@blank#1{%
|
||||
\if#1m%
|
||||
\noexpand\LT@entry{1}{0pt}%
|
||||
\expandafter\LT@build@blank
|
||||
\fi}
|
||||
\def\LT@make@row{%
|
||||
\global\expandafter\let\expandafter\LT@save@row
|
||||
\csname LT@\romannumeral\c@LT@tables\endcsname
|
||||
\ifx\LT@save@row\relax
|
||||
\LT@blank@row
|
||||
\else
|
||||
{\let\LT@entry\or
|
||||
\if!%
|
||||
\ifcase\expandafter\expandafter\expandafter\LT@cols
|
||||
\expandafter\@gobble\LT@save@row
|
||||
\or
|
||||
\else
|
||||
\relax
|
||||
\fi
|
||||
!%
|
||||
\else
|
||||
\aftergroup\LT@blank@row
|
||||
\fi}%
|
||||
\fi}
|
||||
\let\setlongtables\relax
|
||||
\def\LT@get@widths{%
|
||||
\setbox\tw@\hbox{%
|
||||
\unhbox\@ne
|
||||
\let\LT@old@row\LT@save@row
|
||||
\global\let\LT@save@row\@empty
|
||||
\count@\LT@cols
|
||||
\loop
|
||||
\unskip
|
||||
\setbox\tw@\lastbox
|
||||
\ifhbox\tw@
|
||||
\LT@def@row
|
||||
\advance\count@\m@ne
|
||||
\repeat}%
|
||||
\ifx\LT@@save@row\@undefined
|
||||
\let\LT@@save@row\LT@save@row
|
||||
\fi}
|
||||
\def\LT@def@row{%
|
||||
\let\LT@entry\or
|
||||
\edef\@tempa{%
|
||||
\ifcase\expandafter\count@\LT@old@row
|
||||
\else
|
||||
{1}{0pt}%
|
||||
\fi}%
|
||||
\let\LT@entry\relax
|
||||
\xdef\LT@save@row{%
|
||||
\LT@entry
|
||||
\expandafter\LT@max@sel\@tempa
|
||||
\LT@save@row}}
|
||||
\def\LT@max@sel#1#2{%
|
||||
{\ifdim#2=\wd\tw@
|
||||
#1%
|
||||
\else
|
||||
\number\c@LT@chunks
|
||||
\fi}%
|
||||
{\the\wd\tw@}}
|
||||
\def\LT@hline{%
|
||||
\noalign{\ifnum0=`}\fi
|
||||
\penalty\@M
|
||||
\futurelet\@let@token\LT@@hline}
|
||||
\def\LT@@hline{%
|
||||
\ifx\@let@token\hline
|
||||
\global\let\@gtempa\@gobble
|
||||
\gdef\LT@sep{\penalty-\@medpenalty\vskip\doublerulesep}%
|
||||
\else
|
||||
\global\let\@gtempa\@empty
|
||||
\gdef\LT@sep{\penalty-\@lowpenalty\vskip-\arrayrulewidth}%
|
||||
\fi
|
||||
\ifnum0=`{\fi}%
|
||||
\multispan\LT@cols
|
||||
\unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr
|
||||
\noalign{\LT@sep}%
|
||||
\multispan\LT@cols
|
||||
\unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr
|
||||
\noalign{\penalty\@M}%
|
||||
\@gtempa}
|
||||
\def\LT@caption{%
|
||||
\noalign\bgroup
|
||||
\@ifnextchar[{\egroup\LT@c@ption\@firstofone}\LT@capti@n}
|
||||
\def\LT@c@ption#1[#2]#3{%
|
||||
\LT@makecaption#1\fnum@table{#3}%
|
||||
\def\@tempa{#2}%
|
||||
\ifx\@tempa\@empty\else
|
||||
{\let\\\space
|
||||
\addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}%
|
||||
\fi}
|
||||
\def\LT@capti@n{%
|
||||
\@ifstar
|
||||
{\egroup\LT@c@ption\@gobble[]}%
|
||||
{\egroup\@xdblarg{\LT@c@ption\@firstofone}}}
|
||||
\def\LT@makecaption#1#2#3{%
|
||||
\LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%
|
||||
\sbox\@tempboxa{#1{#2: }#3}%
|
||||
\ifdim\wd\@tempboxa>\hsize
|
||||
#1{#2: }#3%
|
||||
\else
|
||||
\hbox to\hsize{\hfil\box\@tempboxa\hfil}%
|
||||
\fi
|
||||
\endgraf\vskip\baselineskip}%
|
||||
\hss}}}
|
||||
\def\LT@output{%
|
||||
\ifnum\outputpenalty <-\@Mi
|
||||
\ifnum\outputpenalty > -\LT@end@pen
|
||||
\LT@err{floats and marginpars not allowed in a longtable}\@ehc
|
||||
\else
|
||||
\setbox\z@\vbox{\unvbox\@cclv}%
|
||||
\ifdim \ht\LT@lastfoot>\ht\LT@foot
|
||||
\dimen@\pagegoal
|
||||
\advance\dimen@\ht\LT@foot
|
||||
\advance\dimen@-\ht\LT@lastfoot
|
||||
\ifdim\dimen@<\ht\z@
|
||||
\setbox\@cclv\vbox{\unvbox\z@\copy\LT@foot\vss}%
|
||||
\@makecol
|
||||
\@outputpage
|
||||
\global\vsize\@colroom
|
||||
\setbox\z@\vbox{\box\LT@head}%
|
||||
\fi
|
||||
\fi
|
||||
\unvbox\z@\ifvoid\LT@lastfoot\copy\LT@foot\else\box\LT@lastfoot\fi
|
||||
\fi
|
||||
\else
|
||||
\setbox\@cclv\vbox{\unvbox\@cclv\copy\LT@foot\vss}%
|
||||
\@makecol
|
||||
\@outputpage
|
||||
\global\vsize\@colroom
|
||||
\copy\LT@head\nobreak
|
||||
\fi}
|
||||
\def\LT@end@hd@ft#1{%
|
||||
\LT@echunk
|
||||
\ifx\LT@start\endgraf
|
||||
\LT@err
|
||||
{Longtable head or foot not at start of table}%
|
||||
{Increase LTchunksize}%
|
||||
\fi
|
||||
\setbox#1\box\z@
|
||||
\LT@get@widths
|
||||
\LT@bchunk}
|
||||
\def\endfirsthead{\LT@end@hd@ft\LT@firsthead}
|
||||
\def\endhead{\LT@end@hd@ft\LT@head}
|
||||
\def\endfoot{\LT@end@hd@ft\LT@foot}
|
||||
\def\endlastfoot{\LT@end@hd@ft\LT@lastfoot}
|
||||
\def\LT@startpbox#1{%
|
||||
\bgroup
|
||||
\let\@footnotetext\LT@p@ftntext
|
||||
\setlength\hsize{#1}%
|
||||
\@arrayparboxrestore
|
||||
\vrule \@height \ht\@arstrutbox \@width \z@}
|
||||
\def\LT@endpbox{%
|
||||
\@finalstrut\@arstrutbox
|
||||
\egroup
|
||||
\the\LT@p@ftn
|
||||
\global\LT@p@ftn{}%
|
||||
\hfil}
|
||||
%% added \long to prevent:
|
||||
% LaTeX Warning: Command \LT@p@ftntext has changed.
|
||||
%
|
||||
% from the original repository (https://github.com/latex3/latex2e/blob/develop/required/tools/longtable.dtx):
|
||||
% \changes{v4.15}{2021/03/28}
|
||||
% {make long for gh/364}
|
||||
% Inside the `p' column, just save up the footnote text in a token
|
||||
% register.
|
||||
\long\def\LT@p@ftntext#1{%
|
||||
\edef\@tempa{\the\LT@p@ftn\noexpand\footnotetext[\the\c@footnote]}%
|
||||
\global\LT@p@ftn\expandafter{\@tempa{#1}}}%
|
||||
|
||||
\@namedef{ver@longtable.sty}{2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen}
|
||||
\endinput
|
||||
%%
|
||||
%% End of file `longtable.sty'.
|
||||
261
doc/latex/refman.tex
Normal file
261
doc/latex/refman.tex
Normal file
@@ -0,0 +1,261 @@
|
||||
% 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}
|
||||
%% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package
|
||||
\usepackage{ifthen}
|
||||
\ifx\requestedLaTeXdate\undefined
|
||||
\usepackage{array}
|
||||
\else
|
||||
\usepackage{array}[=2016-10-06]
|
||||
\fi
|
||||
%%
|
||||
% 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={My Project},%
|
||||
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 My Project}\\
|
||||
\vspace*{1cm}
|
||||
{\large Generated by Doxygen 1.13.2}\\
|
||||
\end{center}
|
||||
\end{titlepage}
|
||||
\clearemptydoublepage
|
||||
\pagenumbering{roman}
|
||||
\tableofcontents
|
||||
\clearemptydoublepage
|
||||
\pagenumbering{arabic}
|
||||
% re-enable anchors again
|
||||
\hypersetup{pageanchor=true}
|
||||
%--- Begin generated contents ---
|
||||
\chapter{Class Index}
|
||||
\input{annotated}
|
||||
\chapter{File Index}
|
||||
\input{files}
|
||||
\chapter{Class Documentation}
|
||||
\input{structconfigEntry}
|
||||
\chapter{File Documentation}
|
||||
\input{config_8c}
|
||||
\input{config_8c_source}
|
||||
\input{config_8h}
|
||||
\input{config_8h_source}
|
||||
\input{file_8c}
|
||||
\input{file_8c_source}
|
||||
\input{file_8h}
|
||||
\input{file_8h_source}
|
||||
\input{test_8c}
|
||||
\input{test_8c_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}
|
||||
60
doc/latex/structconfigEntry.tex
Normal file
60
doc/latex/structconfigEntry.tex
Normal file
@@ -0,0 +1,60 @@
|
||||
\doxysection{config\+Entry Struct Reference}
|
||||
\hypertarget{structconfigEntry}{}\label{structconfigEntry}\index{configEntry@{configEntry}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$config.\+h$>$}
|
||||
|
||||
\doxysubsubsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
char \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{section\+Name}}
|
||||
\item
|
||||
char \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{key\+Name}}
|
||||
\item
|
||||
char \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{key\+Value}}
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\doxysubsection{Detailed Description}
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00030}{30}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
|
||||
|
||||
\doxysubsection{Member Data Documentation}
|
||||
\Hypertarget{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}\index{configEntry@{configEntry}!keyName@{keyName}}
|
||||
\index{keyName@{keyName}!configEntry@{configEntry}}
|
||||
\doxysubsubsection{\texorpdfstring{keyName}{keyName}}
|
||||
{\footnotesize\ttfamily \label{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}
|
||||
char\texorpdfstring{$\ast$}{*} config\+Entry\+::key\+Name}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00033}{33}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}\index{configEntry@{configEntry}!keyValue@{keyValue}}
|
||||
\index{keyValue@{keyValue}!configEntry@{configEntry}}
|
||||
\doxysubsubsection{\texorpdfstring{keyValue}{keyValue}}
|
||||
{\footnotesize\ttfamily \label{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}
|
||||
char\texorpdfstring{$\ast$}{*} config\+Entry\+::key\+Value}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00034}{34}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
\Hypertarget{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}\index{configEntry@{configEntry}!sectionName@{sectionName}}
|
||||
\index{sectionName@{sectionName}!configEntry@{configEntry}}
|
||||
\doxysubsubsection{\texorpdfstring{sectionName}{sectionName}}
|
||||
{\footnotesize\ttfamily \label{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}
|
||||
char\texorpdfstring{$\ast$}{*} config\+Entry\+::section\+Name}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{config_8h_source_l00032}{32}} of file \mbox{\hyperlink{config_8h_source}{config.\+h}}.
|
||||
|
||||
|
||||
|
||||
The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\hyperlink{config_8h}{config.\+h}}\end{DoxyCompactItemize}
|
||||
2557
doc/latex/tabu_doxygen.sty
Normal file
2557
doc/latex/tabu_doxygen.sty
Normal file
File diff suppressed because it is too large
Load Diff
26
doc/latex/test_8c.tex
Normal file
26
doc/latex/test_8c.tex
Normal file
@@ -0,0 +1,26 @@
|
||||
\doxysection{test.\+c File Reference}
|
||||
\hypertarget{test_8c}{}\label{test_8c}\index{test.c@{test.c}}
|
||||
{\ttfamily \#include "{}config.\+h"{}}\newline
|
||||
{\ttfamily \#include $<$errno.\+h$>$}\newline
|
||||
{\ttfamily \#include $<$stdio.\+h$>$}\newline
|
||||
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
|
||||
{\ttfamily \#include $<$string.\+h$>$}\newline
|
||||
{\ttfamily \#include "{}file.\+h"{}}\newline
|
||||
\doxysubsubsection*{Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
int \mbox{\hyperlink{test_8c_a840291bc02cba5474a4cb46a9b9566fe}{main}} (void)
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\doxysubsection{Function Documentation}
|
||||
\Hypertarget{test_8c_a840291bc02cba5474a4cb46a9b9566fe}\index{test.c@{test.c}!main@{main}}
|
||||
\index{main@{main}!test.c@{test.c}}
|
||||
\doxysubsubsection{\texorpdfstring{main()}{main()}}
|
||||
{\footnotesize\ttfamily \label{test_8c_a840291bc02cba5474a4cb46a9b9566fe}
|
||||
int main (\begin{DoxyParamCaption}\item[{void}]{}{}\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Definition at line \mbox{\hyperlink{test_8c_source_l00008}{8}} of file \mbox{\hyperlink{test_8c_source}{test.\+c}}.
|
||||
|
||||
144
doc/latex/test_8c_source.tex
Normal file
144
doc/latex/test_8c_source.tex
Normal file
@@ -0,0 +1,144 @@
|
||||
\doxysection{test.\+c}
|
||||
\hypertarget{test_8c_source}{}\label{test_8c_source}\mbox{\hyperlink{test_8c}{Go to the documentation of this file.}}
|
||||
\begin{DoxyCode}{0}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00001}00001\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{config_8h}{config.h}}"{}}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00002}00002\ \textcolor{preprocessor}{\#include\ <errno.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00003}00003\ \textcolor{preprocessor}{\#include\ <stdio.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00004}00004\ \textcolor{preprocessor}{\#include\ <stdlib.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00005}00005\ \textcolor{preprocessor}{\#include\ <string.h>}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00006}00006\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{file_8h}{file.h}}"{}}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00007}00007\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00008}\mbox{\hyperlink{test_8c_a840291bc02cba5474a4cb46a9b9566fe}{00008}}\ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{test_8c_a840291bc02cba5474a4cb46a9b9566fe}{main}}(\textcolor{keywordtype}{void})}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00009}00009\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00010}00010\ \ \ \ \textcolor{keywordtype}{char}\ teststr[]\ =\ \textcolor{stringliteral}{"{}sdafsdfsdf[12345asdfddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd]"{}};}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00011}00011\ \ \ \ \textcolor{keywordtype}{char}\ *name\ =\ NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00012}00012\ \ \ \ \textcolor{keywordtype}{char}\ *sectionName=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00013}00013\ \ \ \ \textcolor{keywordtype}{int}\ ret=0;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00014}00014\ \ \ \ name\ =\ malloc(\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}}*\textcolor{keyword}{sizeof}(\textcolor{keywordtype}{char}));}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00015}00015\ \ \ \ \mbox{\hyperlink{config_8c_a699e504c1ab9ceffb828dbf365a5e374}{getStrAtPos}}(teststr,\ 11,\ 15,\ \&name,\ \mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00016}00016\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00017}00017\ \ \ \ sectionName\ =\ malloc(\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00018}00018\ \ \ \ memset(sectionName,0,\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00019}00019\ \ \ \ ret=\mbox{\hyperlink{config_8c_aae86bc3f3ebba4d6aba3ca1392c0126a}{checkSection}}(teststr,\textcolor{charliteral}{'['},\textcolor{charliteral}{']'},\ \§ionName);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00020}00020\ \ \ \ \textcolor{keywordflow}{if}(ret\ ==\ \mbox{\hyperlink{config_8h_a02f5a0519bc0372946e64d593c0c58ce}{FOUND\_SECTION}})}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00021}00021\ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00022}00022\ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}checkSection\ sucessfull\(\backslash\)nsectionName=\%s\(\backslash\)n"{}},sectionName);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00023}00023\ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00024}00024\ \ \ \ \textcolor{keywordflow}{else}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00025}00025\ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00026}00026\ \ \ \ \ \ \ \ free(sectionName);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00027}00027\ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}an\ error\ occured:\%d\(\backslash\)n"{}},ret);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00028}00028\ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 1;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00029}00029\ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00030}00030\ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00031}00031\ \ \ \ \textcolor{keywordtype}{char}\ testpair[]\ =\ \textcolor{stringliteral}{"{}asifdsfo=s1254124"{}};}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00032}00032\ \ \ \ \textcolor{keywordtype}{char}\ *keyName=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00033}00033\ \ \ \ \textcolor{keywordtype}{char}\ *keyValue=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00034}00034\ \ \ \ \textcolor{keywordtype}{char}\ *content=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00035}00035\ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00036}00036\ \ \ \ keyName\ =\ malloc(\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00037}00037\ \ \ \ keyValue\ =\ malloc(\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00038}00038\ \ \ \ memset(keyName,0,\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00039}00039\ \ \ \ memset(keyValue,0,\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00040}00040\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00041}00041\ \ \ \ \textcolor{keywordflow}{if}((ret=\mbox{\hyperlink{config_8c_ab0b547ee554d9b305adc1b2ad85080a3}{getNameValuePair}}(testpair,}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00042}00042\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{charliteral}{'='},0,}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00043}00043\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \&keyName,\&keyValue,}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00044}00044\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}},\mbox{\hyperlink{config_8h_aa454692b60895f7025f12b1e0065acea}{MAX\_LEN\_SECTIONNAME}}))==\mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00045}00045\ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00046}00046\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}keyname:\%s\ Value:\ \%s\(\backslash\)n"{}},keyName,keyValue);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00047}00047\ \ \ \ \}\textcolor{keywordflow}{else}\{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00048}00048\ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}error\ getNameValuePair:\ \%d\(\backslash\)n"{}},ret);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00049}00049\ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00050}00050\ \ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00051}00051\ \ \ \ \ \textcolor{keywordtype}{long}\ neededSize=0;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00052}00052\ \ \ \ \ \textcolor{keywordflow}{if}((ret=\mbox{\hyperlink{file_8c_a415337a87938760b49ba4c0d74ab6c6a}{getFile}}(\textcolor{stringliteral}{"{}config-\/segfault.cfg"{}},NULL,0,\&neededSize))==\mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00053}00053\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00054}00054\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}sucessfull\ retrieved\ size:\%ld\(\backslash\)n"{}},neededSize);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00055}00055\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00056}00056\ \ \ \ \ \textcolor{keywordflow}{else}\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00057}00057\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Error\ on\ getFile:\%d\(\backslash\)n"{}},ret);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00058}00058\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 1;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00059}00059\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00060}00060\ \ \ \ \ content\ =\ malloc(neededSize);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00061}00061\ \ \ \ \ printf(\textcolor{stringliteral}{"{}allocate\ buffer\ for\ filecontent\ size:\%ld\(\backslash\)n"{}},neededSize);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00062}00062\ \ \ \ \ \textcolor{keywordflow}{if}(content\ ==\ NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00063}00063\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00064}00064\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{int}\ error\ =\ errno;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00065}00065\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}MALLOC:\ \%d\(\backslash\)n"{}},error);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00066}00066\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ error;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00067}00067\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00068}00068\ \ \ \ \ memset(content,0,neededSize);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00069}00069\ \ \ \ \ \textcolor{keywordflow}{if}((ret=\mbox{\hyperlink{file_8c_a415337a87938760b49ba4c0d74ab6c6a}{getFile}}(\textcolor{stringliteral}{"{}config-\/segfault.cfg"{}},\&content,neededSize,\&neededSize))==\mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00070}00070\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00071}00071\ \ \ \ \ \ \ \ \ \textcolor{comment}{//printf("{}Sucessfull\ read\ file\ into\ buffer:\%s|\(\backslash\)n-\/-\/-\/\(\backslash\)n"{},content);}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00072}00072\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00073}00073\ \ \ \ \ \textcolor{keywordflow}{else}\ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00074}00074\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Error\ on\ getFile:\%d\(\backslash\)n"{}},ret);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00075}00075\ \ \ \ \ \ \ \ \ free(content);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00076}00076\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 1;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00077}00077\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00078}00078\ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{structconfigEntry}{configEntry}}\ *entry=NULL;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00079}00079\ \ \ \ \ \textcolor{keywordtype}{int}\ returnedCount=0;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00080}00080\ \ \ \ \ \textcolor{keywordtype}{int}\ i=0;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00081}00081\ \ \ \ \ \textcolor{keywordtype}{int}\ count=10;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00082}00082\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00083}00083\ \ \ \ \ entry\ =\ malloc(count*\textcolor{keyword}{sizeof}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structconfigEntry}{configEntry}}));}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00084}00084\ \ \ \ \ \textcolor{keywordflow}{if}(entry\ ==\ NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00085}00085\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00086}00086\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{int}\ error\ =\ errno;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00087}00087\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}MALLOC:\ \%d\(\backslash\)n"{}},error);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00088}00088\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00089}00089\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00090}00090\ \ \ \ \ ret\ =\ \mbox{\hyperlink{config_8c_a15a5f64f830221feac0af723899208b2}{parseConfig}}(content,\&entry,count,\&returnedCount);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00091}00091\ \ \ \ \ \textcolor{keywordflow}{if}(ret!=\mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00092}00092\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00093}00093\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Error\ on\ parseConfig:\%d\(\backslash\)nReallocate\ from\ size\ \%d,\ to\ \%d\(\backslash\)n"{}},ret,count,returnedCount);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00094}00094\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00095}00095\ \ \ \ \ \textcolor{keywordflow}{if}(returnedCount\ >\ count)}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00096}00096\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00097}00097\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}(i=0;i<count;i++)}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00098}00098\ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00099}00099\ \ \ \ \ \ \ \ \ \ \ \ \ free(entry[i].\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00100}00100\ \ \ \ \ \ \ \ \ \ \ \ \ free(entry[i].\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00101}00101\ \ \ \ \ \ \ \ \ \ \ \ \ free(entry[i].\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00102}00102\ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00103}00103\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00104}00104\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Error\ on\ parseConfig:\%d\(\backslash\)nReallocate\ from\ size\ \%d,\ to\ \%d\(\backslash\)n"{}},ret,count,returnedCount);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00105}00105\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}((entry=realloc(entry,returnedCount*\textcolor{keyword}{sizeof}(\textcolor{keyword}{struct}\ \mbox{\hyperlink{structconfigEntry}{configEntry}})))==NULL)}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00106}00106\ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00107}00107\ \ \ \ \ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}error\ could\ not\ reallocate\ from\ size\ \%d\ to\ \%d\ \(\backslash\)n"{}},count,returnedCount);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00108}00108\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 1;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00109}00109\ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00110}00110\ \ \ \ \ \ \ \ \ ret\ =\ \mbox{\hyperlink{config_8c_a15a5f64f830221feac0af723899208b2}{parseConfig}}(content,\&entry,returnedCount,\&returnedCount);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00111}00111\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}(ret!=\mbox{\hyperlink{config_8h_a258bb72419ef143530a2f8f55e7d57af}{NO\_ERROR}})}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00112}00112\ \ \ \ \ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00113}00113\ \ \ \ \ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}Error\ on\ parseConfig:\%d\(\backslash\)n"{}},ret);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00114}00114\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ ret;}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00115}00115\ \ \ \ \ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00116}00116\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}returnedCount:\%d\(\backslash\)n"{}},returnedCount);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00117}00117\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00118}00118\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00119}00119\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00120}00120\ \ \ \ \ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00121}00121\ \ \ \ \ free(content);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00122}00122\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00123}00123\ \ \ \ \ \textcolor{keywordflow}{for}(i=0;i<returnedCount;i++)}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00124}00124\ \ \ \ \ \{}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00125}00125\ \ \ \ \ \ \ \ \ printf(\textcolor{stringliteral}{"{}i:\%d/\%d,\ struct\ section:\ \%s,\ keyname:\ \%s,\ keyvalue:\ \%s\(\backslash\)n"{}},i,returnedCount,entry[i].\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}},entry[i].\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}},entry[i].\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00126}00126\ \ \ \ \ \ \ \ \ free(entry[i].\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00127}00127\ \ \ \ \ \ \ \ \ free(entry[i].\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00128}00128\ \ \ \ \ \ \ \ \ free(entry[i].\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00129}00129\ \ \ \ \ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00130}00130\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00131}00131\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00132}00132\ \ \ \ free(\mbox{\hyperlink{structconfigEntry_a221f7ca4b687e6cfce063e332330d635}{keyValue}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00133}00133\ \ \ \ free(\mbox{\hyperlink{structconfigEntry_a6b96fdfa727658a18ab5a03d5e5a4572}{keyName}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00134}00134\ \ \ \ free(name);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00135}00135\ \ \ \ free(entry);}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00136}00136\ \ \ \ free(\mbox{\hyperlink{structconfigEntry_ad610b2d30e2432b3cb5f0d0e397f2043}{sectionName}});}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00137}00137\ \ \ \ \ \textcolor{keywordflow}{return}\ 0;\ }
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00138}00138\ \}}
|
||||
\DoxyCodeLine{\Hypertarget{test_8c_source_l00139}00139\ }
|
||||
|
||||
\end{DoxyCode}
|
||||
Reference in New Issue
Block a user