docs(docs): rebuilt docs

This commit is contained in:
2025-06-11 11:41:55 -04:00
parent 1e5938df0d
commit f0e1840c91
138 changed files with 18404 additions and 7317 deletions

View File

@@ -1,23 +1,42 @@
LATEX_CMD=pdflatex
LATEX_CMD?=pdflatex
MKIDX_CMD?=makeindex
BIBTEX_CMD?=bibtex
LATEX_COUNT?=8
MANUAL_FILE?=refman
all: refman.pdf
all: $(MANUAL_FILE).pdf
pdf: refman.pdf
pdf: $(MANUAL_FILE).pdf
refman.pdf: clean refman.tex
$(LATEX_CMD) refman
makeindex refman.idx
$(LATEX_CMD) refman
latex_count=8 ; \
while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\
$(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) refman ;\
$(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
makeindex refman.idx
$(LATEX_CMD) refman
$(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 refman.pdf
rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl $(MANUAL_FILE).pdf

View File

@@ -8,9 +8,46 @@ Implementation of the \doxylink{class_d_object}{DObject} class.
{\ttfamily \#include "{}DObject.\+h"{}}\newline
{\ttfamily \#include $<$iostream$>$}\newline
{\ttfamily \#include $<$stdexcept$>$}\newline
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item
std\+::ostream \& \mbox{\hyperlink{_d_object_8cpp_aa54e75574f0302a2ca7252f9f0f0b3f1}{operator$<$$<$}} (std\+::ostream \&os, const \mbox{\hyperlink{class_d_object}{DObject}} \&obj)
\begin{DoxyCompactList}\small\item\em Provides a human-\/readable summary of the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Implementation of the \doxylink{class_d_object}{DObject} class.
Provides the implementation for a universal data container with plugin support.
Provides the implementation for a universal data container with plugin support.
Definition in file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\doxysubsection{Function Documentation}
\Hypertarget{_d_object_8cpp_aa54e75574f0302a2ca7252f9f0f0b3f1}\index{DObject.cpp@{DObject.cpp}!operator$<$$<$@{operator$<$$<$}}
\index{operator$<$$<$@{operator$<$$<$}!DObject.cpp@{DObject.cpp}}
\doxysubsubsection{\texorpdfstring{operator$<$$<$()}{operator<<()}}
{\footnotesize\ttfamily \label{_d_object_8cpp_aa54e75574f0302a2ca7252f9f0f0b3f1}
std\+::ostream \& operator$<$$<$ (\begin{DoxyParamCaption}\item[{std\+::ostream \&}]{os}{, }\item[{const \mbox{\hyperlink{class_d_object}{DObject}} \&}]{obj}{}\end{DoxyParamCaption})}
Provides a human-\/readable summary of the \doxylink{class_d_object}{DObject}.
Useful for quick inspection or logging during debugging sessions.
\begin{DoxyParams}{Parameters}
{\em os} & The output stream to write to. \\
\hline
{\em obj} & The \doxylink{class_d_object}{DObject} to summarize. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A reference to the output stream.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00126}{126}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.

View File

@@ -5,7 +5,6 @@
Defines the \doxylink{class_d_object}{DObject} class, a universal data container for the project.
{\ttfamily \#include "{}Metadata.\+h"{}}\newline
{\ttfamily \#include $<$variant$>$}\newline
{\ttfamily \#include $<$memory$>$}\newline
{\ttfamily \#include $<$vector$>$}\newline
@@ -23,4 +22,7 @@ class \mbox{\hyperlink{class_d_object}{DObject}}
\doxysubsection{Detailed Description}
Defines the \doxylink{class_d_object}{DObject} class, a universal data container for the project.
The \doxylink{class_d_object}{DObject} class encapsulates arbitrary data and its associated metadata, providing a consistent interface for public-\/facing functions. It includes support for dynamically registered plugins.
The \doxylink{class_d_object}{DObject} class encapsulates arbitrary data and its associated metadata, providing a consistent interface for public-\/facing functions. It includes support for dynamically registered plugins.
Definition in file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.

View File

@@ -2,61 +2,108 @@
\hypertarget{_d_object_8h_source}{}\label{_d_object_8h_source}\index{src/dobj/public/DObject.h@{src/dobj/public/DObject.h}}
\mbox{\hyperlink{_d_object_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#ifndef\ DOBJECT\_H}}
\DoxyCodeLine{00002\ \textcolor{preprocessor}{\#define\ DOBJECT\_H}}
\DoxyCodeLine{00003\ }
\DoxyCodeLine{00004\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{_metadata_8h}{Metadata.h}}"{}}}
\DoxyCodeLine{00005\ \textcolor{preprocessor}{\#include\ <variant>}}
\DoxyCodeLine{00006\ \textcolor{preprocessor}{\#include\ <memory>}}
\DoxyCodeLine{00007\ \textcolor{preprocessor}{\#include\ <vector>}}
\DoxyCodeLine{00008\ \textcolor{preprocessor}{\#include\ <string>}}
\DoxyCodeLine{00009\ \textcolor{preprocessor}{\#include\ <mutex>}}
\DoxyCodeLine{00010\ \textcolor{preprocessor}{\#include\ <map>}}
\DoxyCodeLine{00011\ \textcolor{preprocessor}{\#include\ <functional>}}
\DoxyCodeLine{00012\ }
\DoxyCodeLine{00021\ }
\DoxyCodeLine{00029\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}\ \{}
\DoxyCodeLine{00030\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00037\ \ \ \ \ \textcolor{keyword}{using\ }\mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{DataType}}\ =\ std::variant<}
\DoxyCodeLine{00038\ \ \ \ \ \ \ \ \ int,\ float,\ double,\ std::string,\ std::monostate,}
\DoxyCodeLine{00039\ \ \ \ \ \ \ \ \ std::vector<int>,\ std::vector<float>,\ std::vector<double>}
\DoxyCodeLine{00040\ \ \ \ \ >;}
\DoxyCodeLine{00041\ }
\DoxyCodeLine{00047\ \ \ \ \ \textcolor{keyword}{using\ }\mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}}\ =\ std::function<void(\mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}\&)>;}
\DoxyCodeLine{00048\ }
\DoxyCodeLine{00054\ \ \ \ \ \mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}();}
\DoxyCodeLine{00055\ }
\DoxyCodeLine{00062\ \ \ \ \ \mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{DataType}}\&\ data,\ \textcolor{keyword}{const}\ \mbox{\hyperlink{class_metadata}{Metadata}}\&\ metadata);}
\DoxyCodeLine{00063\ }
\DoxyCodeLine{00071\ \ \ \ \ \textcolor{keyword}{const}\ \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{DataType}}\&\ \mbox{\hyperlink{class_d_object_a4862655c3634d019b0a45b811d6f7235}{getData}}()\ const\ noexcept;}
\DoxyCodeLine{00072\ }
\DoxyCodeLine{00080\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_ab1718571434e84e90f1ec463e4786a8a}{setData}}(const\ \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{DataType}}\&\ data);}
\DoxyCodeLine{00081\ }
\DoxyCodeLine{00090\ \ \ \ \ const\ \mbox{\hyperlink{class_metadata}{Metadata}}\&\ \mbox{\hyperlink{class_d_object_a157b31e881aac6dd40782d3abc561d4e}{getMetadata}}()\ const\ noexcept;}
\DoxyCodeLine{00091\ }
\DoxyCodeLine{00099\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a296b1519249fdc1f6c7b4ab62d5421bc}{setMetadata}}(const\ \mbox{\hyperlink{class_metadata}{Metadata}}\&\ metadata);}
\DoxyCodeLine{00100\ }
\DoxyCodeLine{00108\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a6f0023aee463e71d92442dcf61b6ed47}{setDebugging}}(\textcolor{keywordtype}{bool}\ enableDebug);}
\DoxyCodeLine{00109\ }
\DoxyCodeLine{00115\ \ \ \ \ [[nodiscard]]\ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{class_d_object_ae47bf220fbe2173cf6933c2380035dbd}{isDebuggingEnabled}}()\ const\ noexcept;}
\DoxyCodeLine{00116\ }
\DoxyCodeLine{00125\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a15afffdf339150fc872bf63bdd08d581}{registerPlugin}}(const\ std::\textcolor{keywordtype}{string}\&\ \textcolor{keywordtype}{id},\ \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}}\ plugin);}
\DoxyCodeLine{00126\ }
\DoxyCodeLine{00134\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a99b8688849e11501033a25f61efb8356}{unregisterPlugin}}(const\ std::\textcolor{keywordtype}{string}\&\ \textcolor{keywordtype}{id});}
\DoxyCodeLine{00135\ }
\DoxyCodeLine{00143\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a99072eb52bb22745f0248f273fbf28fb}{runPlugin}}(const\ std::\textcolor{keywordtype}{string}\&\ \textcolor{keywordtype}{id});}
\DoxyCodeLine{00144\ }
\DoxyCodeLine{00150\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a1223275dcbbf20334ea11707346acb93}{runAllPlugins}}();}
\DoxyCodeLine{00151\ }
\DoxyCodeLine{00161\ \ \ \ \ friend\ std::ostream\&\ operator<<(std::ostream\&\ os,\ const\ \mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}\&\ obj);}
\DoxyCodeLine{00162\ }
\DoxyCodeLine{00163\ private:}
\DoxyCodeLine{00164\ \ \ \ \ \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{DataType}}\ data\_;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00165\ \ \ \ \ \mbox{\hyperlink{class_metadata}{Metadata}}\ metadata\_;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00166\ \ \ \ \ \textcolor{keywordtype}{bool}\ debugEnabled\_\ =\ false;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00167\ \ \ \ \ std::map<std::\textcolor{keywordtype}{string},\ \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}}>\ plugins\_;\ \ \ \ \ \ }
\DoxyCodeLine{00168\ \};}
\DoxyCodeLine{00169\ }
\DoxyCodeLine{00170\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ DOBJECT\_H}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00001}00001\ \textcolor{comment}{/*\ ***********************************************************************}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00002}00002\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00003}00003\ \textcolor{comment}{//\ \ \ Copyright\ (C)\ 2025\ -\/-\/\ The\ 4D-\/STAR\ Collaboration}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00004}00004\ \textcolor{comment}{//\ \ \ File\ Author:\ Emily\ Boudreaux}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00005}00005\ \textcolor{comment}{//\ \ \ Last\ Modified:\ March\ 17,\ 2025}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00006}00006\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00007}00007\ \textcolor{comment}{//\ \ \ 4DSSE\ is\ free\ software;\ you\ can\ use\ it\ and/or\ modify}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00008}00008\ \textcolor{comment}{//\ \ \ it\ under\ the\ terms\ and\ restrictions\ the\ GNU\ General\ Library\ Public}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00009}00009\ \textcolor{comment}{//\ \ \ License\ version\ 3\ (GPLv3)\ as\ published\ by\ the\ Free\ Software\ Foundation.}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00010}00010\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00011}00011\ \textcolor{comment}{//\ \ \ 4DSSE\ is\ distributed\ in\ the\ hope\ that\ it\ will\ be\ useful,}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00012}00012\ \textcolor{comment}{//\ \ \ but\ WITHOUT\ ANY\ WARRANTY;\ without\ even\ the\ implied\ warranty\ of}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00013}00013\ \textcolor{comment}{//\ \ \ MERCHANTABILITY\ or\ FITNESS\ FOR\ A\ PARTICULAR\ PURPOSE.}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00014}00014\ \textcolor{comment}{//\ \ \ See\ the\ GNU\ Library\ General\ Public\ License\ for\ more\ details.}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00015}00015\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00016}00016\ \textcolor{comment}{//\ \ \ You\ should\ have\ received\ a\ copy\ of\ the\ GNU\ Library\ General\ Public\ License}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00017}00017\ \textcolor{comment}{//\ \ \ along\ with\ this\ software;\ if\ not,\ write\ to\ the\ Free\ Software}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00018}00018\ \textcolor{comment}{//\ \ \ Foundation,\ Inc.,\ 59\ Temple\ Place,\ Suite\ 330,\ Boston,\ MA\ 02111-\/1307\ USA}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00019}00019\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00020}00020\ \textcolor{comment}{//\ ***********************************************************************\ */}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00021}00021\ \textcolor{preprocessor}{\#ifndef\ DOBJECT\_H}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00022}00022\ \textcolor{preprocessor}{\#define\ DOBJECT\_H}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00023}00023\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00024}00024\ \textcolor{preprocessor}{\#include\ <variant>}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00025}00025\ \textcolor{preprocessor}{\#include\ <memory>}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00026}00026\ \textcolor{preprocessor}{\#include\ <vector>}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00027}00027\ \textcolor{preprocessor}{\#include\ <string>}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00028}00028\ \textcolor{preprocessor}{\#include\ <mutex>}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00029}00029\ \textcolor{preprocessor}{\#include\ <map>}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00030}00030\ \textcolor{preprocessor}{\#include\ <functional>}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00031}00031\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00040}00040\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00089}\mbox{\hyperlink{class_d_object}{00089}}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}\ \{}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00090}00090\ \textcolor{keyword}{public}:}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00097}\mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{00097}}\ \ \ \ \ \textcolor{keyword}{using\ }\mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{DataType}}\ =\ std::variant<}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00098}00098\ \ \ \ \ \ \ \ \ bool,\ \textcolor{keywordtype}{short}\ int,\ int,\ \textcolor{keywordtype}{long}\ int,\ float,\ double,\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00099}00099\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{long}\ double,\ std::string,\ std::monostate,\ std::vector<int>,}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00100}00100\ \ \ \ \ \ \ \ \ std::vector<float>,\ std::vector<double>,\ std::vector<std::string>,}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00101}00101\ \ \ \ \ \ \ \ \ std::vector<std::vector<int>>,\ std::vector<std::vector<float>>,}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00102}00102\ \ \ \ \ \ \ \ \ std::vector<std::vector<double>>,}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00103}00103\ \ \ \ \ \ \ \ \ std::vector<std::vector<std::vector<int>>>,}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00104}00104\ \ \ \ \ \ \ \ \ std::vector<std::vector<std::vector<float>>>,}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00105}00105\ \ \ \ \ \ \ \ \ std::vector<std::vector<std::vector<double>>>}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00106}00106\ \ \ \ \ >;}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00107}00107\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00108}00108\ \ \ \ \ \textcolor{comment}{//\ Mapping\ of\ data\ types\ to\ their\ string\ representations}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00109}\mbox{\hyperlink{class_d_object_a358d5f015da09ae5f0cbb46f3fd9e401}{00109}}\ \ \ \ \ std::map<int,\ std::string>\ \mbox{\hyperlink{class_d_object_a358d5f015da09ae5f0cbb46f3fd9e401}{dataTypeMap}}\ =\ \{}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00110}00110\ \ \ \ \ \ \ \ \ \{0,\ \textcolor{stringliteral}{"{}bool"{}}\},\ \{1,\ \textcolor{stringliteral}{"{}short\ int"{}}\},\ \{2,\ \textcolor{stringliteral}{"{}int"{}}\},\ \{3,\ \textcolor{stringliteral}{"{}long\ int"{}}\},\ \{4,\ \textcolor{stringliteral}{"{}float"{}}\},}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00111}00111\ \ \ \ \ \ \ \ \ \{5,\ \textcolor{stringliteral}{"{}double"{}}\},\ \{6,\ \textcolor{stringliteral}{"{}long\ double"{}}\},\ \{7,\ \textcolor{stringliteral}{"{}string"{}}\},\ \{8,\ \textcolor{stringliteral}{"{}std::monostate"{}}\},}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00112}00112\ \ \ \ \ \ \ \ \ \{9,\ \textcolor{stringliteral}{"{}vector<int>"{}}\},\ \{10,\ \textcolor{stringliteral}{"{}vector<float>"{}}\},\ \{11,\ \textcolor{stringliteral}{"{}vector<double>"{}}\},}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00113}00113\ \ \ \ \ \ \ \ \ \{12,\ \textcolor{stringliteral}{"{}vector<string>"{}}\},\ \{13,\ \textcolor{stringliteral}{"{}vector<vector<int>"{}}\},}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00114}00114\ \ \ \ \ \ \ \ \ \{14,\ \textcolor{stringliteral}{"{}vector<vector<float>"{}}\},\ \{15,\ \textcolor{stringliteral}{"{}vector<vector<double>"{}}\},}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00115}00115\ \ \ \ \ \ \ \ \ \{16,\ \textcolor{stringliteral}{"{}vector<vector<vector<int>>"{}}\},\ \{17,\ \textcolor{stringliteral}{"{}vector<vector<vector<float>>"{}}\},}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00116}00116\ \ \ \ \ \ \ \ \ \{18,\ \textcolor{stringliteral}{"{}vector<vector<vector<double>>"{}}\}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00117}00117\ \ \ \ \ \};}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00118}00118\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00119}00119\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00125}\mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{00125}}\ \ \ \ \ \textcolor{keyword}{using\ }\mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}}\ =\ std::function<void(\mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}\&)>;}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00126}00126\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00132}00132\ \ \ \ \ \mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}();}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00133}00133\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00139}00139\ \ \ \ \ \mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{DataType}}\&\ data);}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00140}00140\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00148}00148\ \ \ \ \ \textcolor{keyword}{const}\ \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{DataType}}\&\ \mbox{\hyperlink{class_d_object_a4862655c3634d019b0a45b811d6f7235}{getData}}()\ const\ noexcept;}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00149}00149\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00155}00155\ \ \ \ \ template\ <typename\ T>}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00156}\mbox{\hyperlink{class_d_object_aca2db093c1c8c6f7893de07544aed619}{00156}}\ \ \ \ \ T\ \mbox{\hyperlink{class_d_object_aca2db093c1c8c6f7893de07544aed619}{getDataAs}}()\textcolor{keyword}{\ const\ }\{}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00157}00157\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (std::holds\_alternative<T>(\mbox{\hyperlink{class_d_object_ad7ba02f6d87ce64792149096f3310b21}{data\_}}))\ \{}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00158}00158\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ std::get<T>(\mbox{\hyperlink{class_d_object_ad7ba02f6d87ce64792149096f3310b21}{data\_}});}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00159}00159\ \ \ \ \ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \{}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00160}00160\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ std::bad\_variant\_access();}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00161}00161\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00162}00162\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00163}00163\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00171}00171\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_ab1718571434e84e90f1ec463e4786a8a}{setData}}(\textcolor{keyword}{const}\ \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{DataType}}\&\ data);}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00172}00172\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00180}00180\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a6f0023aee463e71d92442dcf61b6ed47}{setDebugging}}(\textcolor{keywordtype}{bool}\ enableDebug);}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00181}00181\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00187}00187\ \ \ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{class_d_object_ae47bf220fbe2173cf6933c2380035dbd}{isDebuggingEnabled}}()\ const\ noexcept;}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00188}00188\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00194}00194\ \ \ \ \ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{class_d_object_a3dce47a519f9da5085c0c5ac1eea4f38}{setErrorCode}}(\textcolor{keywordtype}{int}\ code)\ noexcept;}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00195}00195\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00201}00201\ \ \ \ \ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{class_d_object_afa8926d916081de72478cb8813c25e98}{getErrorCode}}()\ const\ noexcept;}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00202}00202\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00203}00203\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00212}00212\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a15afffdf339150fc872bf63bdd08d581}{registerPlugin}}(const\ std::\textcolor{keywordtype}{string}\&\ \textcolor{keywordtype}{id},\ \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}}\ plugin);}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00213}00213\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00221}00221\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a99b8688849e11501033a25f61efb8356}{unregisterPlugin}}(const\ std::\textcolor{keywordtype}{string}\&\ \textcolor{keywordtype}{id});}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00222}00222\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00230}00230\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a99072eb52bb22745f0248f273fbf28fb}{runPlugin}}(const\ std::\textcolor{keywordtype}{string}\&\ \textcolor{keywordtype}{id});}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00231}00231\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00237}00237\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_d_object_a1223275dcbbf20334ea11707346acb93}{runAllPlugins}}();}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00238}00238\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00248}00248\ \ \ \ \ friend\ std::ostream\&\ operator<<(std::ostream\&\ os,\ const\ \mbox{\hyperlink{class_d_object}{DObject}}\&\ obj);}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00249}00249\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00250}00250\ private:}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00251}\mbox{\hyperlink{class_d_object_ad7ba02f6d87ce64792149096f3310b21}{00251}}\ \ \ \ \ \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{DataType}}\ \mbox{\hyperlink{class_d_object_ad7ba02f6d87ce64792149096f3310b21}{data\_}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00252}\mbox{\hyperlink{class_d_object_accf5c10d4afc3969607e11b0055312d5}{00252}}\ \ \ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{class_d_object_accf5c10d4afc3969607e11b0055312d5}{debugEnabled\_}}\ =\ false;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00253}\mbox{\hyperlink{class_d_object_ad8de5890e8dae5fc7e72fabca2520fc3}{00253}}\ \ \ \ \ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{class_d_object_ad8de5890e8dae5fc7e72fabca2520fc3}{errorCode\_}}\ =\ 0;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00254}\mbox{\hyperlink{class_d_object_ae9f7e4d2fbabc076961a40185676e208}{00254}}\ \ \ \ \ std::map<std::\textcolor{keywordtype}{string},\ \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}}>\ \mbox{\hyperlink{class_d_object_ae9f7e4d2fbabc076961a40185676e208}{plugins\_}};\ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00255}00255\ \};}
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00256}00256\ }
\DoxyCodeLine{\Hypertarget{_d_object_8h_source_l00257}00257\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ DOBJECT\_H}}
\end{DoxyCode}

View File

@@ -17,4 +17,7 @@ class \mbox{\hyperlink{class_lockable_d_object}{Lockable\+DObject}}
\doxysubsection{Detailed Description}
A lightweight wrapper for \doxylink{class_d_object}{DObject} that adds locking capabilities.
This class allows safe concurrent access to a \doxylink{class_d_object}{DObject} by providing locking and unlocking methods.
This class allows safe concurrent access to a \doxylink{class_d_object}{DObject} by providing locking and unlocking methods.
Definition in file \mbox{\hyperlink{_lockable_d_object_8h_source}{Lockable\+DObject.\+h}}.

View File

@@ -2,28 +2,48 @@
\hypertarget{_lockable_d_object_8h_source}{}\label{_lockable_d_object_8h_source}\index{src/dobj/public/LockableDObject.h@{src/dobj/public/LockableDObject.h}}
\mbox{\hyperlink{_lockable_d_object_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#ifndef\ LOCKABLE\_DOBJECT\_H}}
\DoxyCodeLine{00002\ \textcolor{preprocessor}{\#define\ LOCKABLE\_DOBJECT\_H}}
\DoxyCodeLine{00003\ }
\DoxyCodeLine{00004\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{_d_object_8h}{DObject.h}}"{}}}
\DoxyCodeLine{00005\ \textcolor{preprocessor}{\#include\ <mutex>}}
\DoxyCodeLine{00006\ }
\DoxyCodeLine{00014\ }
\DoxyCodeLine{00019\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}{LockableDObject}}\ \{}
\DoxyCodeLine{00020\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00024\ \ \ \ \ \mbox{\hyperlink{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}{LockableDObject}}()\ =\ \textcolor{keywordflow}{default};}
\DoxyCodeLine{00025\ }
\DoxyCodeLine{00030\ \ \ \ \ \mbox{\hyperlink{class_d_object}{DObject}}\&\ \mbox{\hyperlink{class_lockable_d_object_adcfe201fc728cc1c6fcf638a566ba9a1}{get}}();}
\DoxyCodeLine{00031\ }
\DoxyCodeLine{00035\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_lockable_d_object_ade38ca54703913359fc3b4366f6e292a}{lock}}();}
\DoxyCodeLine{00036\ }
\DoxyCodeLine{00040\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_lockable_d_object_a1481ed99dcd837490bf28309aadaedfb}{unlock}}();}
\DoxyCodeLine{00041\ }
\DoxyCodeLine{00042\ \textcolor{keyword}{private}:}
\DoxyCodeLine{00043\ \ \ \ \ \mbox{\hyperlink{class_d_object}{DObject}}\ object\_;\ \ \ \ \ \ \ \ }
\DoxyCodeLine{00044\ \ \ \ \ std::mutex\ mutex\_;\ \ \ \ \ \ }
\DoxyCodeLine{00045\ \};}
\DoxyCodeLine{00046\ }
\DoxyCodeLine{00047\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ LOCKABLE\_DOBJECT\_H}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00001}00001\ \textcolor{comment}{/*\ ***********************************************************************}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00002}00002\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00003}00003\ \textcolor{comment}{//\ \ \ Copyright\ (C)\ 2025\ -\/-\/\ The\ 4D-\/STAR\ Collaboration}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00004}00004\ \textcolor{comment}{//\ \ \ File\ Author:\ Emily\ Boudreaux}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00005}00005\ \textcolor{comment}{//\ \ \ Last\ Modified:\ March\ 17,\ 2025}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00006}00006\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00007}00007\ \textcolor{comment}{//\ \ \ 4DSSE\ is\ free\ software;\ you\ can\ use\ it\ and/or\ modify}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00008}00008\ \textcolor{comment}{//\ \ \ it\ under\ the\ terms\ and\ restrictions\ the\ GNU\ General\ Library\ Public}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00009}00009\ \textcolor{comment}{//\ \ \ License\ version\ 3\ (GPLv3)\ as\ published\ by\ the\ Free\ Software\ Foundation.}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00010}00010\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00011}00011\ \textcolor{comment}{//\ \ \ 4DSSE\ is\ distributed\ in\ the\ hope\ that\ it\ will\ be\ useful,}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00012}00012\ \textcolor{comment}{//\ \ \ but\ WITHOUT\ ANY\ WARRANTY;\ without\ even\ the\ implied\ warranty\ of}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00013}00013\ \textcolor{comment}{//\ \ \ MERCHANTABILITY\ or\ FITNESS\ FOR\ A\ PARTICULAR\ PURPOSE.}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00014}00014\ \textcolor{comment}{//\ \ \ See\ the\ GNU\ Library\ General\ Public\ License\ for\ more\ details.}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00015}00015\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00016}00016\ \textcolor{comment}{//\ \ \ You\ should\ have\ received\ a\ copy\ of\ the\ GNU\ Library\ General\ Public\ License}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00017}00017\ \textcolor{comment}{//\ \ \ along\ with\ this\ software;\ if\ not,\ write\ to\ the\ Free\ Software}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00018}00018\ \textcolor{comment}{//\ \ \ Foundation,\ Inc.,\ 59\ Temple\ Place,\ Suite\ 330,\ Boston,\ MA\ 02111-\/1307\ USA}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00019}00019\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00020}00020\ \textcolor{comment}{//\ ***********************************************************************\ */}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00021}00021\ \textcolor{preprocessor}{\#ifndef\ LOCKABLE\_DOBJECT\_H}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00022}00022\ \textcolor{preprocessor}{\#define\ LOCKABLE\_DOBJECT\_H}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00023}00023\ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00024}00024\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{_d_object_8h}{DObject.h}}"{}}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00025}00025\ \textcolor{preprocessor}{\#include\ <mutex>}}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00026}00026\ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00034}00034\ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00039}\mbox{\hyperlink{class_lockable_d_object}{00039}}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}{LockableDObject}}\ \{}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00040}00040\ \textcolor{keyword}{public}:}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00044}\mbox{\hyperlink{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}{00044}}\ \ \ \ \ \mbox{\hyperlink{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}{LockableDObject}}()\ =\ \textcolor{keywordflow}{default};}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00045}00045\ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00050}00050\ \ \ \ \ \mbox{\hyperlink{class_d_object}{DObject}}\&\ \mbox{\hyperlink{class_lockable_d_object_adcfe201fc728cc1c6fcf638a566ba9a1}{get}}();}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00051}00051\ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00055}00055\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_lockable_d_object_ade38ca54703913359fc3b4366f6e292a}{lock}}();}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00056}00056\ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00060}00060\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_lockable_d_object_a1481ed99dcd837490bf28309aadaedfb}{unlock}}();}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00061}00061\ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00062}00062\ \textcolor{keyword}{private}:}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00063}\mbox{\hyperlink{class_lockable_d_object_a1eb1ca1d9cf979dcb9eead96054b89bb}{00063}}\ \ \ \ \ \mbox{\hyperlink{class_d_object}{DObject}}\ \mbox{\hyperlink{class_lockable_d_object_a1eb1ca1d9cf979dcb9eead96054b89bb}{object\_}};\ \ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00064}\mbox{\hyperlink{class_lockable_d_object_a712cd3ea0c565f7e9089a651ef79b7bd}{00064}}\ \ \ \ \ std::mutex\ \mbox{\hyperlink{class_lockable_d_object_a712cd3ea0c565f7e9089a651ef79b7bd}{mutex\_}};\ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00065}00065\ \};}
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00066}00066\ }
\DoxyCodeLine{\Hypertarget{_lockable_d_object_8h_source_l00067}00067\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ LOCKABLE\_DOBJECT\_H}}
\end{DoxyCode}

View File

@@ -18,6 +18,10 @@ Implementation of the \doxylink{class_metadata}{Metadata} class used in the dobj
Provides methods to manage metadata for data objects, including size, type, dimensions, and debugging flags.
Definition in file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\doxysubsection{Function Documentation}
\Hypertarget{_metadata_8cpp_a12949a1ea26c4ff1afeb97101c0493c5}\index{Metadata.cpp@{Metadata.cpp}!operator$<$$<$@{operator$<$$<$}}
\index{operator$<$$<$@{operator$<$$<$}!Metadata.cpp@{Metadata.cpp}}
@@ -41,3 +45,7 @@ This function provides a human-\/readable summary of the metadata. Useful for qu
\begin{DoxyReturn}{Returns}
A reference to the output stream.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00146}{146}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.

View File

@@ -14,9 +14,30 @@ Public interface for the \doxylink{class_metadata}{Metadata} class used in the d
\item
class \mbox{\hyperlink{class_metadata}{Metadata}}
\begin{DoxyCompactList}\small\item\em Represents metadata information for data objects in the dobj module. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item
\#define \mbox{\hyperlink{_metadata_8h_ab57c319c35ea0fbacf781f2ecb3a4339}{EXPORT\+\_\+\+SYMBOL}}
\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Public interface for the \doxylink{class_metadata}{Metadata} class used in the dobj module.
The \doxylink{class_metadata}{Metadata} class provides descriptive information about the data encapsulated within a dobj, including size, type, dimensions, and debugging flags.
The \doxylink{class_metadata}{Metadata} class provides descriptive information about the data encapsulated within a dobj, including size, type, dimensions, and debugging flags.
Definition in file \mbox{\hyperlink{_metadata_8h_source}{Metadata.\+h}}.
\doxysubsection{Macro Definition Documentation}
\Hypertarget{_metadata_8h_ab57c319c35ea0fbacf781f2ecb3a4339}\index{Metadata.h@{Metadata.h}!EXPORT\_SYMBOL@{EXPORT\_SYMBOL}}
\index{EXPORT\_SYMBOL@{EXPORT\_SYMBOL}!Metadata.h@{Metadata.h}}
\doxysubsubsection{\texorpdfstring{EXPORT\_SYMBOL}{EXPORT\_SYMBOL}}
{\footnotesize\ttfamily \label{_metadata_8h_ab57c319c35ea0fbacf781f2ecb3a4339}
\#define EXPORT\+\_\+\+SYMBOL}
Definition at line \mbox{\hyperlink{_metadata_8h_source_l00027}{27}} of file \mbox{\hyperlink{_metadata_8h_source}{Metadata.\+h}}.

View File

@@ -2,52 +2,72 @@
\hypertarget{_metadata_8h_source}{}\label{_metadata_8h_source}\index{src/dobj/public/Metadata.h@{src/dobj/public/Metadata.h}}
\mbox{\hyperlink{_metadata_8h}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{00001\ \textcolor{preprocessor}{\#ifndef\ METADATA\_H}}
\DoxyCodeLine{00002\ \textcolor{preprocessor}{\#define\ METADATA\_H}}
\DoxyCodeLine{00003\ }
\DoxyCodeLine{00004\ \textcolor{preprocessor}{\#if\ defined(\_\_APPLE\_\_)\ ||\ defined(\_\_linux\_\_)}}
\DoxyCodeLine{00005\ \textcolor{preprocessor}{\#define\ EXPORT\_SYMBOL\ \_\_attribute\_\_((visibility("{}default"{})))}}
\DoxyCodeLine{00006\ \textcolor{preprocessor}{\#else}}
\DoxyCodeLine{00007\ \textcolor{preprocessor}{\#define\ EXPORT\_SYMBOL}}
\DoxyCodeLine{00008\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{00009\ }
\DoxyCodeLine{00010\ \textcolor{preprocessor}{\#include\ <string>}}
\DoxyCodeLine{00011\ \textcolor{preprocessor}{\#include\ <vector>}}
\DoxyCodeLine{00012\ \textcolor{preprocessor}{\#include\ <cstddef>}}
\DoxyCodeLine{00013\ \textcolor{preprocessor}{\#include\ <iostream>}}
\DoxyCodeLine{00014\ }
\DoxyCodeLine{00022\ }
\DoxyCodeLine{00031\ \textcolor{keyword}{class\ }EXPORT\_SYMBOL\ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}\ \{}
\DoxyCodeLine{00032\ \textcolor{keyword}{public}:}
\DoxyCodeLine{00036\ \ \ \ \ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}()\ =\ \textcolor{keywordflow}{default};}
\DoxyCodeLine{00037\ }
\DoxyCodeLine{00046\ \ \ \ \ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}(std::size\_t\ byteSize,\ std::string\ dataType,\ std::vector<std::size\_t>\ dimensions,\ \textcolor{keywordtype}{bool}\ debugFlag\ =\ \textcolor{keyword}{false});}
\DoxyCodeLine{00047\ }
\DoxyCodeLine{00052\ \ \ \ \ [[nodiscard]]\ std::size\_t\ \mbox{\hyperlink{class_metadata_ac7980d1efdd6ae434f0115f83d08348e}{getByteSize}}()\ const\ noexcept;}
\DoxyCodeLine{00053\ }
\DoxyCodeLine{00058\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a07035de7b0c780ef340e1a11c60a4d2b}{setByteSize}}(std::\textcolor{keywordtype}{size\_t}\ byteSize)\ noexcept;}
\DoxyCodeLine{00059\ }
\DoxyCodeLine{00064\ \ \ \ \ [[nodiscard]]\ const\ std::\textcolor{keywordtype}{string}\&\ \mbox{\hyperlink{class_metadata_aeed7f22ccc61d9a3d6425441d381dcdc}{getDataType}}()\ const\ noexcept;}
\DoxyCodeLine{00065\ }
\DoxyCodeLine{00070\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a88f4f57d443e2b7664e75e57a29dfbf0}{setDataType}}(const\ std::\textcolor{keywordtype}{string}\&\ dataType);}
\DoxyCodeLine{00071\ }
\DoxyCodeLine{00076\ \ \ \ \ [[nodiscard]]\ const\ std::vector<std::\textcolor{keywordtype}{size\_t}>\&\ \mbox{\hyperlink{class_metadata_a412c0c0b8754d85f9edbbdcd637f3b20}{getDimensions}}()\ const\ noexcept;}
\DoxyCodeLine{00077\ }
\DoxyCodeLine{00082\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_af5264d1666839e69c192b565b5cfa606}{setDimensions}}(const\ std::vector<std::\textcolor{keywordtype}{size\_t}>\&\ dimensions);}
\DoxyCodeLine{00083\ }
\DoxyCodeLine{00088\ \ \ \ \ [[nodiscard]]\ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{class_metadata_abe52c81e04665628666b4140cd346b69}{isDebugEnabled}}()\ const\ noexcept;}
\DoxyCodeLine{00089\ }
\DoxyCodeLine{00094\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a365c4594ad65c3b10b40a1cf4f4aea26}{setDebugEnabled}}(\textcolor{keywordtype}{bool}\ debugFlag)\ noexcept;}
\DoxyCodeLine{00095\ }
\DoxyCodeLine{00103\ \ \ \ \ friend\ std::ostream\&\ operator<<(std::ostream\&\ os,\ const\ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}\&\ metadata);}
\DoxyCodeLine{00104\ }
\DoxyCodeLine{00105\ private:}
\DoxyCodeLine{00106\ \ \ \ \ std::\textcolor{keywordtype}{size\_t}\ byteSize\_\ =\ 0;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00107\ \ \ \ \ std::\textcolor{keywordtype}{string}\ dataType\_;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00108\ \ \ \ \ std::vector<std::\textcolor{keywordtype}{size\_t}>\ dimensions\_;\ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00109\ \ \ \ \ \textcolor{keywordtype}{bool}\ debugFlag\_\ =\ false;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{00110\ \};}
\DoxyCodeLine{00111\ }
\DoxyCodeLine{00112\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ METADATA\_H}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00001}00001\ \textcolor{comment}{/*\ ***********************************************************************}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00002}00002\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00003}00003\ \textcolor{comment}{//\ \ \ Copyright\ (C)\ 2025\ -\/-\/\ The\ 4D-\/STAR\ Collaboration}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00004}00004\ \textcolor{comment}{//\ \ \ File\ Author:\ Emily\ Boudreaux}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00005}00005\ \textcolor{comment}{//\ \ \ Last\ Modified:\ March\ 17,\ 2025}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00006}00006\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00007}00007\ \textcolor{comment}{//\ \ \ 4DSSE\ is\ free\ software;\ you\ can\ use\ it\ and/or\ modify}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00008}00008\ \textcolor{comment}{//\ \ \ it\ under\ the\ terms\ and\ restrictions\ the\ GNU\ General\ Library\ Public}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00009}00009\ \textcolor{comment}{//\ \ \ License\ version\ 3\ (GPLv3)\ as\ published\ by\ the\ Free\ Software\ Foundation.}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00010}00010\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00011}00011\ \textcolor{comment}{//\ \ \ 4DSSE\ is\ distributed\ in\ the\ hope\ that\ it\ will\ be\ useful,}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00012}00012\ \textcolor{comment}{//\ \ \ but\ WITHOUT\ ANY\ WARRANTY;\ without\ even\ the\ implied\ warranty\ of}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00013}00013\ \textcolor{comment}{//\ \ \ MERCHANTABILITY\ or\ FITNESS\ FOR\ A\ PARTICULAR\ PURPOSE.}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00014}00014\ \textcolor{comment}{//\ \ \ See\ the\ GNU\ Library\ General\ Public\ License\ for\ more\ details.}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00015}00015\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00016}00016\ \textcolor{comment}{//\ \ \ You\ should\ have\ received\ a\ copy\ of\ the\ GNU\ Library\ General\ Public\ License}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00017}00017\ \textcolor{comment}{//\ \ \ along\ with\ this\ software;\ if\ not,\ write\ to\ the\ Free\ Software}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00018}00018\ \textcolor{comment}{//\ \ \ Foundation,\ Inc.,\ 59\ Temple\ Place,\ Suite\ 330,\ Boston,\ MA\ 02111-\/1307\ USA}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00019}00019\ \textcolor{comment}{//}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00020}00020\ \textcolor{comment}{//\ ***********************************************************************\ */}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00021}00021\ \textcolor{preprocessor}{\#ifndef\ METADATA\_H}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00022}00022\ \textcolor{preprocessor}{\#define\ METADATA\_H}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00023}00023\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00024}00024\ \textcolor{preprocessor}{\#if\ defined(\_\_APPLE\_\_)\ ||\ defined(\_\_linux\_\_)}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00025}00025\ \textcolor{preprocessor}{\#define\ EXPORT\_SYMBOL\ \_\_attribute\_\_((visibility("{}default"{})))}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00026}00026\ \textcolor{preprocessor}{\#else}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00027}\mbox{\hyperlink{_metadata_8h_ab57c319c35ea0fbacf781f2ecb3a4339}{00027}}\ \textcolor{preprocessor}{\#define\ EXPORT\_SYMBOL}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00028}00028\ \textcolor{preprocessor}{\#endif}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00029}00029\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00030}00030\ \textcolor{preprocessor}{\#include\ <string>}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00031}00031\ \textcolor{preprocessor}{\#include\ <vector>}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00032}00032\ \textcolor{preprocessor}{\#include\ <cstddef>}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00033}00033\ \textcolor{preprocessor}{\#include\ <iostream>}}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00034}00034\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00042}00042\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00051}\mbox{\hyperlink{class_metadata}{00051}}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{_metadata_8h_ab57c319c35ea0fbacf781f2ecb3a4339}{EXPORT\_SYMBOL}}\ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}\ \{}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00052}00052\ \textcolor{keyword}{public}:}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00056}\mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{00056}}\ \ \ \ \ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}()\ =\ \textcolor{keywordflow}{default};}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00057}00057\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00066}00066\ \ \ \ \ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}(std::size\_t\ byteSize,\ std::string\ dataType,\ std::vector<std::size\_t>\ dimensions,\ \textcolor{keywordtype}{bool}\ debugFlag\ =\ \textcolor{keyword}{false});}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00067}00067\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00072}00072\ \ \ \ \ [[nodiscard]]\ std::size\_t\ \mbox{\hyperlink{class_metadata_ac7980d1efdd6ae434f0115f83d08348e}{getByteSize}}()\ const\ noexcept;}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00073}00073\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00078}00078\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a07035de7b0c780ef340e1a11c60a4d2b}{setByteSize}}(std::\textcolor{keywordtype}{size\_t}\ byteSize)\ noexcept;}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00079}00079\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00084}00084\ \ \ \ \ [[nodiscard]]\ const\ std::\textcolor{keywordtype}{string}\&\ \mbox{\hyperlink{class_metadata_aeed7f22ccc61d9a3d6425441d381dcdc}{getDataType}}()\ const\ noexcept;}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00085}00085\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00090}00090\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a88f4f57d443e2b7664e75e57a29dfbf0}{setDataType}}(const\ std::\textcolor{keywordtype}{string}\&\ dataType);}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00091}00091\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00096}00096\ \ \ \ \ [[nodiscard]]\ const\ std::vector<std::\textcolor{keywordtype}{size\_t}>\&\ \mbox{\hyperlink{class_metadata_a412c0c0b8754d85f9edbbdcd637f3b20}{getDimensions}}()\ const\ noexcept;}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00097}00097\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00102}00102\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_af5264d1666839e69c192b565b5cfa606}{setDimensions}}(const\ std::vector<std::\textcolor{keywordtype}{size\_t}>\&\ dimensions);}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00103}00103\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00108}00108\ \ \ \ \ [[nodiscard]]\ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{class_metadata_abe52c81e04665628666b4140cd346b69}{isDebugEnabled}}()\ const\ noexcept;}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00109}00109\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00114}00114\ \ \ \ \ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_metadata_a365c4594ad65c3b10b40a1cf4f4aea26}{setDebugEnabled}}(\textcolor{keywordtype}{bool}\ debugFlag)\ noexcept;}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00115}00115\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00123}00123\ \ \ \ \ friend\ std::ostream\&\ operator<<(std::ostream\&\ os,\ const\ \mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}}\&\ metadata);}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00124}00124\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00125}00125\ private:}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00126}\mbox{\hyperlink{class_metadata_ac73a509797c98c0d52fb32e1f93e38bc}{00126}}\ \ \ \ \ \textcolor{keywordtype}{int}\ \mbox{\hyperlink{class_metadata_ac73a509797c98c0d52fb32e1f93e38bc}{byteSize\_}}\ =\ 0;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00127}\mbox{\hyperlink{class_metadata_a290205e5f46416dd0f48bd6ff62888ac}{00127}}\ \ \ \ \ std::\textcolor{keywordtype}{string}\ \mbox{\hyperlink{class_metadata_a290205e5f46416dd0f48bd6ff62888ac}{dataType\_}};\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00128}\mbox{\hyperlink{class_metadata_a163f74d4ef9ecd13a34e7e9cab2e21ce}{00128}}\ \ \ \ \ std::vector<std::\textcolor{keywordtype}{size\_t}>\ \mbox{\hyperlink{class_metadata_a163f74d4ef9ecd13a34e7e9cab2e21ce}{dimensions\_}};\ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00129}\mbox{\hyperlink{class_metadata_a65fd506f1bd41699d9cd19bc0dfc9701}{00129}}\ \ \ \ \ \textcolor{keywordtype}{bool}\ \mbox{\hyperlink{class_metadata_a65fd506f1bd41699d9cd19bc0dfc9701}{debugFlag\_}}\ =\ false;\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00130}00130\ \};}
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00131}00131\ }
\DoxyCodeLine{\Hypertarget{_metadata_8h_source_l00132}00132\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\ METADATA\_H}}
\end{DoxyCode}

View File

@@ -1,25 +1,48 @@
\doxysection{Class List}
Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList}
\item\contentsline{section}{\mbox{\hyperlink{classBilinearIntegratorWrapper}{Bilinear\+Integrator\+Wrapper}} \\*A wrapper class for bilinear integrator }{\pageref{classBilinearIntegratorWrapper}}{}
\item\contentsline{section}{\mbox{\hyperlink{classCompositeNonlinearIntegrator}{Composite\+Nonlinear\+Integrator}} \\*A class for composite nonlinear integrator }{\pageref{classCompositeNonlinearIntegrator}}{}
\item\contentsline{section}{\mbox{\hyperlink{classConfig}{Config}} \\*Singleton class to manage configuration settings loaded from a YAML file }{\pageref{classConfig}}{}
\item\contentsline{section}{\mbox{\hyperlink{classconfigTest}{config\+Test}} \\*Test suite for the \mbox{\hyperlink{classConfig}{Config}} class }{\pageref{classconfigTest}}{}
\item\contentsline{section}{\mbox{\hyperlink{classconfigTestPrivateAccessor}{config\+Test\+Private\+Accessor}} }{\pageref{classconfigTestPrivateAccessor}}{}
\item\contentsline{section}{\mbox{\hyperlink{structConstant}{Constant}} \\*Structure to hold a constant\textquotesingle{}s details }{\pageref{structConstant}}{}
\item\contentsline{section}{\mbox{\hyperlink{classConstants}{Constants}} \\*Class to manage a collection of constants }{\pageref{classConstants}}{}
\item\contentsline{section}{\mbox{\hyperlink{classconstTest}{const\+Test}} \\*Test suite for the const class }{\pageref{classconstTest}}{}
\item\contentsline{section}{\mbox{\hyperlink{classDObject}{DObject}} \\*A universal data container class }{\pageref{classDObject}}{}
\item\contentsline{section}{\mbox{\hyperlink{classDObjectTest}{DObject\+Test}} \\*Test suite for the \mbox{\hyperlink{classDObject}{DObject}} class }{\pageref{classDObjectTest}}{}
\item\contentsline{section}{\mbox{\hyperlink{structHeader}{Header}} \\*Structure to hold the header information of an OPAT file }{\pageref{structHeader}}{}
\item\contentsline{section}{\mbox{\hyperlink{classLockableDObject}{Lockable\+DObject}} \\*Wrapper for \mbox{\hyperlink{classDObject}{DObject}} with thread-\/safe access }{\pageref{classLockableDObject}}{}
\item\contentsline{section}{\mbox{\hyperlink{classLockableDObjectTest}{Lockable\+DObject\+Test}} \\*Test suite for the \mbox{\hyperlink{classLockableDObject}{Lockable\+DObject}} class }{\pageref{classLockableDObjectTest}}{}
\item\contentsline{section}{\mbox{\hyperlink{classMeshIO}{Mesh\+IO}} \\*Class for handling mesh input/output operations }{\pageref{classMeshIO}}{}
\item\contentsline{section}{\mbox{\hyperlink{classmeshIOTest}{mesh\+IOTest}} }{\pageref{classmeshIOTest}}{}
\item\contentsline{section}{\mbox{\hyperlink{classMetadata}{Metadata}} \\*Represents metadata information for data objects in the dobj module }{\pageref{classMetadata}}{}
\item\contentsline{section}{\mbox{\hyperlink{classMetadataTest}{Metadata\+Test}} \\*Test suite for the \mbox{\hyperlink{classMetadata}{Metadata}} class }{\pageref{classMetadataTest}}{}
\item\contentsline{section}{\mbox{\hyperlink{classNonlinearPowerIntegrator}{Nonlinear\+Power\+Integrator}} \\*A class for nonlinear power integrator }{\pageref{classNonlinearPowerIntegrator}}{}
\item\contentsline{section}{\mbox{\hyperlink{classOpatIO}{Opat\+IO}} \\*Class to manage the input/output operations for OPAT files }{\pageref{classOpatIO}}{}
\item\contentsline{section}{\mbox{\hyperlink{classopatIOTest}{opat\+IOTest}} \\*Test suite for the const class }{\pageref{classopatIOTest}}{}
\item\contentsline{section}{\mbox{\hyperlink{structOPATTable}{OPATTable}} \\*Structure to hold the data of an OPAT table }{\pageref{structOPATTable}}{}
\item\contentsline{section}{\mbox{\hyperlink{structTableIndex}{Table\+Index}} \\*Structure to hold the index information of a table in an OPAT file }{\pageref{structTableIndex}}{}
\item\contentsline{section}{\mbox{\hyperlink{classnn_approx8_1_1_approx8_network}{nn\+Approx8\+::\+Approx8\+Network}} \\*Class for the Approx8 nuclear reaction network }{\pageref{classnn_approx8_1_1_approx8_network}}{}
\item\contentsline{section}{\mbox{\hyperlink{classapprox8_test}{approx8\+Test}} }{\pageref{classapprox8_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{classcomposition_1_1_composition}{composition\+::\+Composition}} }{\pageref{classcomposition_1_1_composition}}{}
\item\contentsline{section}{\mbox{\hyperlink{structcomposition_1_1_composition_entry}{composition\+::\+Composition\+Entry}} \\*Represents an entry in the composition with a symbol and mass fraction }{\pageref{structcomposition_1_1_composition_entry}}{}
\item\contentsline{section}{\mbox{\hyperlink{classcomposition_test}{composition\+Test}} \\*Test suite for the composition class }{\pageref{classcomposition_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_config}{Config}} \\*Singleton class to manage configuration settings loaded from a YAML file }{\pageref{class_config}}{}
\item\contentsline{section}{\mbox{\hyperlink{classconfig_test}{config\+Test}} \\*Test suite for the \doxylink{class_config}{Config} class }{\pageref{classconfig_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{classconfig_test_private_accessor}{config\+Test\+Private\+Accessor}} }{\pageref{classconfig_test_private_accessor}}{}
\item\contentsline{section}{\mbox{\hyperlink{struct_constant}{Constant}} \\*Structure to hold a constant\textquotesingle{}s details }{\pageref{struct_constant}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_constants}{Constants}} \\*Class to manage a collection of constants }{\pageref{class_constants}}{}
\item\contentsline{section}{\mbox{\hyperlink{classconst_test}{const\+Test}} \\*Test suite for the const class }{\pageref{classconst_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_d_object}{DObject}} \\*A universal data container class }{\pageref{class_d_object}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_d_object_test}{DObject\+Test}} \\*Test suite for the \doxylink{class_d_object}{DObject} class }{\pageref{class_d_object_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{structpolycoeff_1_1d_theta_interp_coeff}{polycoeff\+::d\+Theta\+Interp\+Coeff}} }{\pageref{structpolycoeff_1_1d_theta_interp_coeff}}{}
\item\contentsline{section}{\mbox{\hyperlink{structhelmholtz_1_1_e_o_s}{helmholtz\+::\+EOS}} \\*Structure to hold the output parameters and derivatives of the \doxylink{structhelmholtz_1_1_e_o_s}{EOS} calculation }{\pageref{structhelmholtz_1_1_e_o_s}}{}
\item\contentsline{section}{\mbox{\hyperlink{structhelmholtz_1_1_e_o_s_input}{helmholtz\+::\+EOSInput}} \\*Structure to hold the input parameters for the \doxylink{structhelmholtz_1_1_e_o_s}{EOS} calculation }{\pageref{structhelmholtz_1_1_e_o_s_input}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_eos_i_o}{Eos\+IO}} \\*Handles the input/output operations for EOS tables }{\pageref{class_eos_i_o}}{}
\item\contentsline{section}{\mbox{\hyperlink{classeos_test}{eos\+Test}} \\*Test suite for the const class }{\pageref{classeos_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{structform_bundle}{form\+Bundle}} \\*Structure to hold the various bilinear and nonlinear forms for the polytrope problem }{\pageref{structform_bundle}}{}
\item\contentsline{section}{\mbox{\hyperlink{structcomposition_1_1_global_composition}{composition\+::\+Global\+Composition}} \\*Represents the global composition of a system. This tends to be used after finalize and is primarily for internal use }{\pageref{structcomposition_1_1_global_composition}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_g_m_r_e_s_inverter}{GMRESInverter}} \\*Provides an approximate inverse of the \doxylink{class_schur_compliment}{Schur\+Compliment} operator using GMRES }{\pageref{class_g_m_r_e_s_inverter}}{}
\item\contentsline{section}{\mbox{\hyperlink{structhelmholtz_1_1_h_e_l_m_table}{helmholtz\+::\+HELMTable}} \\*Structure to hold the Helmholtz \doxylink{structhelmholtz_1_1_e_o_s}{EOS} table data }{\pageref{structhelmholtz_1_1_h_e_l_m_table}}{}
\item\contentsline{section}{\mbox{\hyperlink{structnn_approx8_1_1_jacobian}{nn\+Approx8\+::\+Jacobian}} \\*Functor to calculate the \doxylink{structnn_approx8_1_1_jacobian}{Jacobian} matrix for implicit solvers }{\pageref{structnn_approx8_1_1_jacobian}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_lockable_d_object}{Lockable\+DObject}} \\*Wrapper for \doxylink{class_d_object}{DObject} with thread-\/safe access }{\pageref{class_lockable_d_object}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_lockable_d_object_test}{Lockable\+DObject\+Test}} \\*Test suite for the \doxylink{class_lockable_d_object}{Lockable\+DObject} class }{\pageref{class_lockable_d_object_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_probe_1_1_log_manager}{Probe\+::\+Log\+Manager}} \\*Class to manage logging operations }{\pageref{class_probe_1_1_log_manager}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_mesh_i_o}{Mesh\+IO}} \\*Class for handling mesh input/output operations }{\pageref{class_mesh_i_o}}{}
\item\contentsline{section}{\mbox{\hyperlink{classmesh_i_o_test}{mesh\+IOTest}} }{\pageref{classmesh_i_o_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_metadata}{Metadata}} \\*Represents metadata information for data objects in the dobj module }{\pageref{class_metadata}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_metadata_test}{Metadata\+Test}} \\*Test suite for the \doxylink{class_metadata}{Metadata} class }{\pageref{class_metadata_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{structnn_approx8_1_1_net}{nn\+Approx8\+::\+Net}} \\*Contains constants and arrays related to the nuclear network }{\pageref{structnn_approx8_1_1_net}}{}
\item\contentsline{section}{\mbox{\hyperlink{structnuclear_network_1_1_net_in}{nuclear\+Network\+::\+Net\+In}} \\*Input structure for the network evaluation }{\pageref{structnuclear_network_1_1_net_in}}{}
\item\contentsline{section}{\mbox{\hyperlink{structnuclear_network_1_1_net_out}{nuclear\+Network\+::\+Net\+Out}} \\*Output structure for the network evaluation }{\pageref{structnuclear_network_1_1_net_out}}{}
\item\contentsline{section}{\mbox{\hyperlink{classnuclear_network_1_1_network}{nuclear\+Network\+::\+Network}} \\*Class for network evaluation }{\pageref{classnuclear_network_1_1_network}}{}
\item\contentsline{section}{\mbox{\hyperlink{classpoly_m_f_e_m_utils_1_1_nonlinear_power_integrator}{poly\+MFEMUtils\+::\+Nonlinear\+Power\+Integrator}} \\*A class for nonlinear power integrator }{\pageref{classpoly_m_f_e_m_utils_1_1_nonlinear_power_integrator}}{}
\item\contentsline{section}{\mbox{\hyperlink{structnn_approx8_1_1_o_d_e}{nn\+Approx8\+::\+ODE}} \\*Functor to calculate the derivatives for the \doxylink{structnn_approx8_1_1_o_d_e}{ODE} solver }{\pageref{structnn_approx8_1_1_o_d_e}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_poly_solver}{Poly\+Solver}} \\*Solves the Lane-\/\+Emden equation for a polytropic star using a mixed finite element method }{\pageref{class_poly_solver}}{}
\item\contentsline{section}{\mbox{\hyperlink{classpoly_test}{poly\+Test}} }{\pageref{classpoly_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_polytrope_operator}{Polytrope\+Operator}} \\*Represents the coupled nonlinear operator for the polytropic system }{\pageref{class_polytrope_operator}}{}
\item\contentsline{section}{\mbox{\hyperlink{classprobe_test}{probe\+Test}} }{\pageref{classprobe_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_resource_manager}{Resource\+Manager}} \\*Manages resources within the application }{\pageref{class_resource_manager}}{}
\item\contentsline{section}{\mbox{\hyperlink{classresource_manager_test}{resource\+Manager\+Test}} \\*Test suite for the resource\+Manager class }{\pageref{classresource_manager_test}}{}
\item\contentsline{section}{\mbox{\hyperlink{class_schur_compliment}{Schur\+Compliment}} \\*Represents the Schur complement operator used in the solution process }{\pageref{class_schur_compliment}}{}
\item\contentsline{section}{\mbox{\hyperlink{structsolver_bundle}{solver\+Bundle}} \\*Structure to manage the lifetime of MFEM solver objects }{\pageref{structsolver_bundle}}{}
\item\contentsline{section}{\mbox{\hyperlink{structpolycoeff_1_1x1_interp_coeff}{polycoeff\+::x1\+Interp\+Coeff}} \\*Coefficients for the interpolations of the surface location of a polytrope }{\pageref{structpolycoeff_1_1x1_interp_coeff}}{}
\end{DoxyCompactList}

View File

@@ -12,7 +12,7 @@ A universal data container class.
\doxysubsubsection*{Public Types}
\begin{DoxyCompactItemize}
\item
using \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{Data\+Type}}
using \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type}}
\begin{DoxyCompactList}\small\item\em Supported data types for the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
using \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}} = std\+::function$<$void(\mbox{\hyperlink{class_d_object}{DObject}}\&)$>$
\begin{DoxyCompactList}\small\item\em Placeholder type for plugins. \end{DoxyCompactList}\end{DoxyCompactItemize}
@@ -21,20 +21,22 @@ using \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}
\item
\mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}} ()
\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item
\mbox{\hyperlink{class_d_object_ab0c940fa193a42158c6726bf1a2ef54d}{DObject}} (const \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{Data\+Type}} \&data, const \mbox{\hyperlink{class_metadata}{Metadata}} \&metadata)
\begin{DoxyCompactList}\small\item\em Constructor to initialize a \doxylink{class_d_object}{DObject} with data and metadata. \end{DoxyCompactList}\item
const \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{Data\+Type}} \& \mbox{\hyperlink{class_d_object_a4862655c3634d019b0a45b811d6f7235}{get\+Data}} () const noexcept
\mbox{\hyperlink{class_d_object_a598321f3b8524b98df72393c04d7470c}{DObject}} (const \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type}} \&data)
\begin{DoxyCompactList}\small\item\em Constructor to initialize a \doxylink{class_d_object}{DObject} with data. \end{DoxyCompactList}\item
const \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type}} \& \mbox{\hyperlink{class_d_object_a4862655c3634d019b0a45b811d6f7235}{get\+Data}} () const noexcept
\begin{DoxyCompactList}\small\item\em Retrieves the data stored in the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
void \mbox{\hyperlink{class_d_object_ab1718571434e84e90f1ec463e4786a8a}{set\+Data}} (const \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{Data\+Type}} \&data)
{\footnotesize template$<$typename T$>$ }\\T \mbox{\hyperlink{class_d_object_aca2db093c1c8c6f7893de07544aed619}{get\+Data\+As}} () const
\begin{DoxyCompactList}\small\item\em Retrieves the data stored in the \doxylink{class_d_object}{DObject} as a typed object so that std\+::get$<$\+T$>$() is not needed. \end{DoxyCompactList}\item
void \mbox{\hyperlink{class_d_object_ab1718571434e84e90f1ec463e4786a8a}{set\+Data}} (const \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type}} \&data)
\begin{DoxyCompactList}\small\item\em Sets the data for the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
const \mbox{\hyperlink{class_metadata}{Metadata}} \& \mbox{\hyperlink{class_d_object_a157b31e881aac6dd40782d3abc561d4e}{get\+Metadata}} () const noexcept
\begin{DoxyCompactList}\small\item\em Retrieves the metadata associated with the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
void \mbox{\hyperlink{class_d_object_a296b1519249fdc1f6c7b4ab62d5421bc}{set\+Metadata}} (const \mbox{\hyperlink{class_metadata}{Metadata}} \&metadata)
\begin{DoxyCompactList}\small\item\em Updates the metadata for the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
void \mbox{\hyperlink{class_d_object_a6f0023aee463e71d92442dcf61b6ed47}{set\+Debugging}} (bool enable\+Debug)
\begin{DoxyCompactList}\small\item\em Enables or disables debugging and tracing for the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
bool \mbox{\hyperlink{class_d_object_ae47bf220fbe2173cf6933c2380035dbd}{is\+Debugging\+Enabled}} () const noexcept
\begin{DoxyCompactList}\small\item\em Checks if debugging is enabled for the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
int \mbox{\hyperlink{class_d_object_a3dce47a519f9da5085c0c5ac1eea4f38}{set\+Error\+Code}} (int code) noexcept
\item
int \mbox{\hyperlink{class_d_object_afa8926d916081de72478cb8813c25e98}{get\+Error\+Code}} () const noexcept
\begin{DoxyCompactList}\small\item\em Get the error code tracked by the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
void \mbox{\hyperlink{class_d_object_a15afffdf339150fc872bf63bdd08d581}{register\+Plugin}} (const std\+::string \&id, \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}} plugin)
\begin{DoxyCompactList}\small\item\em Registers a plugin with the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
void \mbox{\hyperlink{class_d_object_a99b8688849e11501033a25f61efb8356}{unregister\+Plugin}} (const std\+::string \&id)
@@ -43,6 +45,22 @@ void \mbox{\hyperlink{class_d_object_a99072eb52bb22745f0248f273fbf28fb}{run\+Plu
\begin{DoxyCompactList}\small\item\em Executes a plugin by its identifier. \end{DoxyCompactList}\item
void \mbox{\hyperlink{class_d_object_a1223275dcbbf20334ea11707346acb93}{run\+All\+Plugins}} ()
\begin{DoxyCompactList}\small\item\em Executes all registered plugins in the registry. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item
std\+::map$<$ int, std\+::string $>$ \mbox{\hyperlink{class_d_object_a358d5f015da09ae5f0cbb46f3fd9e401}{data\+Type\+Map}}
\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type}} \mbox{\hyperlink{class_d_object_ad7ba02f6d87ce64792149096f3310b21}{data\+\_\+}}
\begin{DoxyCompactList}\small\item\em The main data stored in the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
bool \mbox{\hyperlink{class_d_object_accf5c10d4afc3969607e11b0055312d5}{debug\+Enabled\+\_\+}} = false
\begin{DoxyCompactList}\small\item\em Indicates whether debugging is enabled. \end{DoxyCompactList}\item
int \mbox{\hyperlink{class_d_object_ad8de5890e8dae5fc7e72fabca2520fc3}{error\+Code\+\_\+}} = 0
\begin{DoxyCompactList}\small\item\em Error code tracked by the \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
std\+::map$<$ std\+::string, \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}} $>$ \mbox{\hyperlink{class_d_object_ae9f7e4d2fbabc076961a40185676e208}{plugins\+\_\+}}
\begin{DoxyCompactList}\small\item\em Registry for dynamically registered plugins. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Friends}
\begin{DoxyCompactItemize}
\item
@@ -53,20 +71,68 @@ std\+::ostream \& \mbox{\hyperlink{class_d_object_aa54e75574f0302a2ca7252f9f0f0b
\doxysubsection{Detailed Description}
A universal data container class.
The \doxylink{class_d_object}{DObject} class is designed to store arbitrary data alongside descriptive metadata. It supports plugin registration to allow extensible functionality.
The \doxylink{class_d_object}{DObject} class is designed to store arbitrary data alongside descriptive metadata. It supports plugin registration to allow extensible functionality.
The general purpose of this is to simplify memory managment, function interfaces, and interoperability with other languages by wrapping all of that up inside of one location (\doxylink{class_d_object}{DObject}). There are still a limited number of types that DOBject can represent these include
\begin{DoxyItemize}
\item bool
\item short int
\item int
\item long int
\item float
\item double
\item long double
\item std\+::string
\item std\+::monostate
\item std\+::vector$<$int$>$
\item std\+::vector$<$float$>$
\item std\+::vector$<$double$>$
\item std\+::vector$<$std\+::string$>$
\item std\+::vector$<$std\+::vector$<$int$>$$>$
\item std\+::vector$<$std\+::vector$<$float$>$$>$
\item std\+::vector$<$std\+::vector$<$double$>$$>$
\item std\+::vector$<$std\+::vector$<$std\+::vector$<$int$>$$>$$>$
\item std\+::vector$<$std\+::vector$<$std\+::vector$<$float$>$$>$$>$
\item std\+::vector\texorpdfstring{$<$}{<}std\+::vector$<$std\+::vector$<$double$>$$>$
\end{DoxyItemize}
If more types are needed, they can be added to the \doxylink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type} variant.
In general the usage of this might look like
\begin{DoxyCode}{0}
\DoxyCodeLine{\mbox{\hyperlink{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}{DObject}}\ obj;}
\DoxyCodeLine{std::vector<int>\ data\ =\ \{1,\ 2,\ 3,\ 4,\ 5\};}
\DoxyCodeLine{obj.\mbox{\hyperlink{class_d_object_ab1718571434e84e90f1ec463e4786a8a}{setData}}(data);}
\DoxyCodeLine{std::cout\ <<\ \textcolor{stringliteral}{"{}Data\ is\ "{}}\ <<\ obj\ <<\ std::end;}
\DoxyCodeLine{someFunction(\&obj);}
\end{DoxyCode}
All memory managment should be taken care of as all datatypes accepted by the varient are either primatives or include their own built in memory managment (i.\+e. this means that wherever possible vectors should be used in place of raw arrays).
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00089}{89}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
\doxysubsection{Member Typedef Documentation}
\Hypertarget{class_d_object_ad6fc2e29eae70cf94a2d241527857573}\index{DObject@{DObject}!DataType@{DataType}}
\Hypertarget{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}\index{DObject@{DObject}!DataType@{DataType}}
\index{DataType@{DataType}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{DataType}{DataType}}
{\footnotesize\ttfamily \label{class_d_object_ad6fc2e29eae70cf94a2d241527857573}
using \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{DObject\+::\+Data\+Type}}}
{\footnotesize\ttfamily \label{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}
using \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{DObject\+::\+Data\+Type}}}
{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{\ std::variant<}
\DoxyCodeLine{\ \ \ \ \ \ \ \ int,\ float,\ double,\ std::string,\ std::monostate,}
\DoxyCodeLine{\ \ \ \ \ \ \ \ std::vector<int>,\ std::vector<float>,\ std::vector<double>}
\DoxyCodeLine{\ \ \ \ \ \ \ \ bool,\ \textcolor{keywordtype}{short}\ int,\ int,\ \textcolor{keywordtype}{long}\ int,\ float,\ double,\ }
\DoxyCodeLine{\ \ \ \ \ \ \ \ \textcolor{keywordtype}{long}\ double,\ std::string,\ std::monostate,\ std::vector<int>,}
\DoxyCodeLine{\ \ \ \ \ \ \ \ std::vector<float>,\ std::vector<double>,\ std::vector<std::string>,}
\DoxyCodeLine{\ \ \ \ \ \ \ \ std::vector<std::vector<int>>,\ std::vector<std::vector<float>>,}
\DoxyCodeLine{\ \ \ \ \ \ \ \ std::vector<std::vector<double>>,}
\DoxyCodeLine{\ \ \ \ \ \ \ \ std::vector<std::vector<std::vector<int>>>,}
\DoxyCodeLine{\ \ \ \ \ \ \ \ std::vector<std::vector<std::vector<float>>>,}
\DoxyCodeLine{\ \ \ \ \ \ \ \ std::vector<std::vector<std::vector<double>>>}
\DoxyCodeLine{\ \ \ \ >}
\end{DoxyCode}
@@ -74,7 +140,11 @@ using \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{DObject
Supported data types for the \doxylink{class_d_object}{DObject}.
This type alias uses {\ttfamily std\+::variant} to store different types of data, ensuring type safety and flexibility. \Hypertarget{class_d_object_af11334d08ef85c68b3aae7554548e5a7}\index{DObject@{DObject}!Plugin@{Plugin}}
This type alias uses {\ttfamily std\+::variant} to store different types of data, ensuring type safety and flexibility.
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00097}{97}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
\Hypertarget{class_d_object_af11334d08ef85c68b3aae7554548e5a7}\index{DObject@{DObject}!Plugin@{Plugin}}
\index{Plugin@{Plugin}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{Plugin}{Plugin}}
{\footnotesize\ttfamily \label{class_d_object_af11334d08ef85c68b3aae7554548e5a7}
@@ -86,6 +156,10 @@ Placeholder type for plugins.
In the future, this will be replaced with a concrete interface.
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00125}{125}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{class_d_object_a0ae54853e18265657296bfb5ac3bf9d0}\index{DObject@{DObject}!DObject@{DObject}}
\index{DObject@{DObject}!DObject@{DObject}}
@@ -97,31 +171,37 @@ DObject\+::\+DObject (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
Default constructor.
Creates an empty \doxylink{class_d_object}{DObject} with default metadata. \Hypertarget{class_d_object_ab0c940fa193a42158c6726bf1a2ef54d}\index{DObject@{DObject}!DObject@{DObject}}
Creates an empty \doxylink{class_d_object}{DObject}.
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00033}{33}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\Hypertarget{class_d_object_a598321f3b8524b98df72393c04d7470c}\index{DObject@{DObject}!DObject@{DObject}}
\index{DObject@{DObject}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{DObject()}{DObject()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \label{class_d_object_ab0c940fa193a42158c6726bf1a2ef54d}
DObject\+::\+DObject (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{Data\+Type}} \&}]{data}{, }\item[{const \mbox{\hyperlink{class_metadata}{Metadata}} \&}]{metadata}{}\end{DoxyParamCaption})}
{\footnotesize\ttfamily \label{class_d_object_a598321f3b8524b98df72393c04d7470c}
DObject\+::\+DObject (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type}} \&}]{data}{}\end{DoxyParamCaption})}
Constructor to initialize a \doxylink{class_d_object}{DObject} with data and metadata.
Constructor to initialize a \doxylink{class_d_object}{DObject} with data.
\begin{DoxyParams}{Parameters}
{\em data} & The data to be stored in the \doxylink{class_d_object}{DObject}. \\
\hline
{\em metadata} & \doxylink{class_metadata}{Metadata} describing the stored data. \\
\hline
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00040}{40}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\doxysubsection{Member Function Documentation}
\Hypertarget{class_d_object_a4862655c3634d019b0a45b811d6f7235}\index{DObject@{DObject}!getData@{getData}}
\index{getData@{getData}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{getData()}{getData()}}
{\footnotesize\ttfamily \label{class_d_object_a4862655c3634d019b0a45b811d6f7235}
const \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{DObject\+::\+Data\+Type}} \& DObject\+::get\+Data (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [noexcept]}}
const \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{DObject\+::\+Data\+Type}} \& DObject\+::get\+Data (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [noexcept]}}
@@ -132,26 +212,50 @@ Use the appropriate type (matching the stored data) with {\ttfamily std\+::get\t
\begin{DoxyReturn}{Returns}
A constant reference to the stored data.
\end{DoxyReturn}
\Hypertarget{class_d_object_a157b31e881aac6dd40782d3abc561d4e}\index{DObject@{DObject}!getMetadata@{getMetadata}}
\index{getMetadata@{getMetadata}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{getMetadata()}{getMetadata()}}
{\footnotesize\ttfamily \label{class_d_object_a157b31e881aac6dd40782d3abc561d4e}
const \mbox{\hyperlink{class_metadata}{Metadata}} \& DObject\+::get\+Metadata (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [noexcept]}}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00046}{46}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\Hypertarget{class_d_object_aca2db093c1c8c6f7893de07544aed619}\index{DObject@{DObject}!getDataAs@{getDataAs}}
\index{getDataAs@{getDataAs}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{getDataAs()}{getDataAs()}}
{\footnotesize\ttfamily \label{class_d_object_aca2db093c1c8c6f7893de07544aed619}
template$<$typename T$>$ \\
T DObject\+::get\+Data\+As (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}
Retrieves the metadata associated with the \doxylink{class_d_object}{DObject}.
The metadata provides essential information about the stored data, such as its type, size, and dimensions.
Retrieves the data stored in the \doxylink{class_d_object}{DObject} as a typed object so that std\+::get$<$\+T$>$() is not needed.
\begin{DoxyReturn}{Returns}
A constant reference to the metadata.
Data as type T
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00156}{156}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
\Hypertarget{class_d_object_afa8926d916081de72478cb8813c25e98}\index{DObject@{DObject}!getErrorCode@{getErrorCode}}
\index{getErrorCode@{getErrorCode}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{getErrorCode()}{getErrorCode()}}
{\footnotesize\ttfamily \label{class_d_object_afa8926d916081de72478cb8813c25e98}
int DObject\+::get\+Error\+Code (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [noexcept]}}
Get the error code tracked by the \doxylink{class_d_object}{DObject}.
\begin{DoxyReturn}{Returns}
The error code
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00080}{80}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\Hypertarget{class_d_object_ae47bf220fbe2173cf6933c2380035dbd}\index{DObject@{DObject}!isDebuggingEnabled@{isDebuggingEnabled}}
\index{isDebuggingEnabled@{isDebuggingEnabled}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{isDebuggingEnabled()}{isDebuggingEnabled()}}
{\footnotesize\ttfamily \label{class_d_object_ae47bf220fbe2173cf6933c2380035dbd}
bool DObject\+::is\+Debugging\+Enabled (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [nodiscard]}, {\ttfamily [noexcept]}}
bool DObject\+::is\+Debugging\+Enabled (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [noexcept]}}
@@ -160,6 +264,10 @@ Checks if debugging is enabled for the \doxylink{class_d_object}{DObject}.
\begin{DoxyReturn}{Returns}
True if debugging is enabled, false otherwise.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00067}{67}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\Hypertarget{class_d_object_a15afffdf339150fc872bf63bdd08d581}\index{DObject@{DObject}!registerPlugin@{registerPlugin}}
\index{registerPlugin@{registerPlugin}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{registerPlugin()}{registerPlugin()}}
@@ -179,6 +287,10 @@ Plugins are stored in a registry and can add custom functionality to the \doxyli
{\em plugin} & The plugin function to register. \\
\hline
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00087}{87}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\Hypertarget{class_d_object_a1223275dcbbf20334ea11707346acb93}\index{DObject@{DObject}!runAllPlugins@{runAllPlugins}}
\index{runAllPlugins@{runAllPlugins}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{runAllPlugins()}{runAllPlugins()}}
@@ -189,7 +301,11 @@ void DObject\+::run\+All\+Plugins (\begin{DoxyParamCaption}{}{}\end{DoxyParamCap
Executes all registered plugins in the registry.
Iterates through all plugins and invokes them on the current \doxylink{class_d_object}{DObject}. \Hypertarget{class_d_object_a99072eb52bb22745f0248f273fbf28fb}\index{DObject@{DObject}!runPlugin@{runPlugin}}
Iterates through all plugins and invokes them on the current \doxylink{class_d_object}{DObject}.
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00117}{117}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\Hypertarget{class_d_object_a99072eb52bb22745f0248f273fbf28fb}\index{DObject@{DObject}!runPlugin@{runPlugin}}
\index{runPlugin@{runPlugin}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{runPlugin()}{runPlugin()}}
{\footnotesize\ttfamily \label{class_d_object_a99072eb52bb22745f0248f273fbf28fb}
@@ -206,11 +322,15 @@ Invokes the registered plugin function. If the plugin is not found, no action is
{\em id} & The unique identifier of the plugin to execute. \\
\hline
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00106}{106}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\Hypertarget{class_d_object_ab1718571434e84e90f1ec463e4786a8a}\index{DObject@{DObject}!setData@{setData}}
\index{setData@{setData}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{setData()}{setData()}}
{\footnotesize\ttfamily \label{class_d_object_ab1718571434e84e90f1ec463e4786a8a}
void DObject\+::set\+Data (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_d_object_ad6fc2e29eae70cf94a2d241527857573}{Data\+Type}} \&}]{data}{}\end{DoxyParamCaption})}
void DObject\+::set\+Data (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type}} \&}]{data}{}\end{DoxyParamCaption})}
@@ -223,6 +343,10 @@ Updates the stored data and optionally updates metadata.
{\em data} & The new data to store in the \doxylink{class_d_object}{DObject}. \\
\hline
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00053}{53}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\Hypertarget{class_d_object_a6f0023aee463e71d92442dcf61b6ed47}\index{DObject@{DObject}!setDebugging@{setDebugging}}
\index{setDebugging@{setDebugging}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{setDebugging()}{setDebugging()}}
@@ -240,23 +364,25 @@ When debugging is enabled, the \doxylink{class_d_object}{DObject} tracks creatio
{\em enable\+Debug} & True to enable debugging, false to disable it. \\
\hline
\end{DoxyParams}
\Hypertarget{class_d_object_a296b1519249fdc1f6c7b4ab62d5421bc}\index{DObject@{DObject}!setMetadata@{setMetadata}}
\index{setMetadata@{setMetadata}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{setMetadata()}{setMetadata()}}
{\footnotesize\ttfamily \label{class_d_object_a296b1519249fdc1f6c7b4ab62d5421bc}
void DObject\+::set\+Metadata (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{class_metadata}{Metadata}} \&}]{metadata}{}\end{DoxyParamCaption})}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00060}{60}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
Updates the metadata for the \doxylink{class_d_object}{DObject}.
\Hypertarget{class_d_object_a3dce47a519f9da5085c0c5ac1eea4f38}\index{DObject@{DObject}!setErrorCode@{setErrorCode}}
\index{setErrorCode@{setErrorCode}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{setErrorCode()}{setErrorCode()}}
{\footnotesize\ttfamily \label{class_d_object_a3dce47a519f9da5085c0c5ac1eea4f38}
int DObject\+::set\+Error\+Code (\begin{DoxyParamCaption}\item[{int}]{code}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [noexcept]}}
Use this function carefully to ensure consistency between the data and metadata.
@breif Set error code tracked by the DOBject
\begin{DoxyReturn}{Returns}
The previous error code
\end{DoxyReturn}
@breif Sets an error code and returns the old one
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00074}{74}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\begin{DoxyParams}{Parameters}
{\em metadata} & The new metadata to associate with the \doxylink{class_d_object}{DObject}. \\
\hline
\end{DoxyParams}
\Hypertarget{class_d_object_a99b8688849e11501033a25f61efb8356}\index{DObject@{DObject}!unregisterPlugin@{unregisterPlugin}}
\index{unregisterPlugin@{unregisterPlugin}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{unregisterPlugin()}{unregisterPlugin()}}
@@ -276,6 +402,10 @@ Removes the plugin from the registry if it exists.
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00097}{97}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\doxysubsection{Friends And Related Symbol Documentation}
\Hypertarget{class_d_object_aa54e75574f0302a2ca7252f9f0f0b3f1}\index{DObject@{DObject}!operator$<$$<$@{operator$<$$<$}}
\index{operator$<$$<$@{operator$<$$<$}!DObject@{DObject}}
@@ -301,6 +431,92 @@ A reference to the output stream.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_d_object_8cpp_source_l00126}{126}} of file \mbox{\hyperlink{_d_object_8cpp_source}{DObject.\+cpp}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{class_d_object_ad7ba02f6d87ce64792149096f3310b21}\index{DObject@{DObject}!data\_@{data\_}}
\index{data\_@{data\_}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{data\_}{data\_}}
{\footnotesize\ttfamily \label{class_d_object_ad7ba02f6d87ce64792149096f3310b21}
\mbox{\hyperlink{class_d_object_a55b7cdac36a3a518ba6e1ecef0e25dcd}{Data\+Type}} DObject\+::data\+\_\+\hspace{0.3cm}{\ttfamily [private]}}
The main data stored in the \doxylink{class_d_object}{DObject}.
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00251}{251}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
\Hypertarget{class_d_object_a358d5f015da09ae5f0cbb46f3fd9e401}\index{DObject@{DObject}!dataTypeMap@{dataTypeMap}}
\index{dataTypeMap@{dataTypeMap}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{dataTypeMap}{dataTypeMap}}
{\footnotesize\ttfamily \label{class_d_object_a358d5f015da09ae5f0cbb46f3fd9e401}
std\+::map$<$int, std\+::string$>$ DObject\+::data\+Type\+Map}
{\bfseries Initial value\+:}
\begin{DoxyCode}{0}
\DoxyCodeLine{=\ \{}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \{0,\ \textcolor{stringliteral}{"{}bool"{}}\},\ \{1,\ \textcolor{stringliteral}{"{}short\ int"{}}\},\ \{2,\ \textcolor{stringliteral}{"{}int"{}}\},\ \{3,\ \textcolor{stringliteral}{"{}long\ int"{}}\},\ \{4,\ \textcolor{stringliteral}{"{}float"{}}\},}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \{5,\ \textcolor{stringliteral}{"{}double"{}}\},\ \{6,\ \textcolor{stringliteral}{"{}long\ double"{}}\},\ \{7,\ \textcolor{stringliteral}{"{}string"{}}\},\ \{8,\ \textcolor{stringliteral}{"{}std::monostate"{}}\},}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \{9,\ \textcolor{stringliteral}{"{}vector<int>"{}}\},\ \{10,\ \textcolor{stringliteral}{"{}vector<float>"{}}\},\ \{11,\ \textcolor{stringliteral}{"{}vector<double>"{}}\},}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \{12,\ \textcolor{stringliteral}{"{}vector<string>"{}}\},\ \{13,\ \textcolor{stringliteral}{"{}vector<vector<int>"{}}\},}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \{14,\ \textcolor{stringliteral}{"{}vector<vector<float>"{}}\},\ \{15,\ \textcolor{stringliteral}{"{}vector<vector<double>"{}}\},}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \{16,\ \textcolor{stringliteral}{"{}vector<vector<vector<int>>"{}}\},\ \{17,\ \textcolor{stringliteral}{"{}vector<vector<vector<float>>"{}}\},}
\DoxyCodeLine{\ \ \ \ \ \ \ \ \{18,\ \textcolor{stringliteral}{"{}vector<vector<vector<double>>"{}}\}}
\DoxyCodeLine{\ \ \ \ \}}
\end{DoxyCode}
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00109}{109}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
\Hypertarget{class_d_object_accf5c10d4afc3969607e11b0055312d5}\index{DObject@{DObject}!debugEnabled\_@{debugEnabled\_}}
\index{debugEnabled\_@{debugEnabled\_}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{debugEnabled\_}{debugEnabled\_}}
{\footnotesize\ttfamily \label{class_d_object_accf5c10d4afc3969607e11b0055312d5}
bool DObject\+::debug\+Enabled\+\_\+ = false\hspace{0.3cm}{\ttfamily [private]}}
Indicates whether debugging is enabled.
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00252}{252}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
\Hypertarget{class_d_object_ad8de5890e8dae5fc7e72fabca2520fc3}\index{DObject@{DObject}!errorCode\_@{errorCode\_}}
\index{errorCode\_@{errorCode\_}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{errorCode\_}{errorCode\_}}
{\footnotesize\ttfamily \label{class_d_object_ad8de5890e8dae5fc7e72fabca2520fc3}
int DObject\+::error\+Code\+\_\+ = 0\hspace{0.3cm}{\ttfamily [private]}}
Error code tracked by the \doxylink{class_d_object}{DObject}.
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00253}{253}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
\Hypertarget{class_d_object_ae9f7e4d2fbabc076961a40185676e208}\index{DObject@{DObject}!plugins\_@{plugins\_}}
\index{plugins\_@{plugins\_}!DObject@{DObject}}
\doxysubsubsection{\texorpdfstring{plugins\_}{plugins\_}}
{\footnotesize\ttfamily \label{class_d_object_ae9f7e4d2fbabc076961a40185676e208}
std\+::map$<$std\+::string, \mbox{\hyperlink{class_d_object_af11334d08ef85c68b3aae7554548e5a7}{Plugin}}$>$ DObject\+::plugins\+\_\+\hspace{0.3cm}{\ttfamily [private]}}
Registry for dynamically registered plugins.
Definition at line \mbox{\hyperlink{_d_object_8h_source_l00254}{254}} of file \mbox{\hyperlink{_d_object_8h_source}{DObject.\+h}}.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
src/dobj/public/\mbox{\hyperlink{_d_object_8h}{DObject.\+h}}\item

View File

@@ -12,22 +12,43 @@ Wrapper for \doxylink{class_d_object}{DObject} with thread-\/safe access.
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\Hypertarget{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}\label{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}
{\bfseries Lockable\+DObject} ()=default
\mbox{\hyperlink{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}{Lockable\+DObject}} ()=default
\begin{DoxyCompactList}\small\item\em Default constructor. \end{DoxyCompactList}\item
\mbox{\hyperlink{class_d_object}{DObject}} \& \mbox{\hyperlink{class_lockable_d_object_adcfe201fc728cc1c6fcf638a566ba9a1}{get}} ()
\begin{DoxyCompactList}\small\item\em Access the underlying \doxylink{class_d_object}{DObject}. \end{DoxyCompactList}\item
\Hypertarget{class_lockable_d_object_ade38ca54703913359fc3b4366f6e292a}\label{class_lockable_d_object_ade38ca54703913359fc3b4366f6e292a}
void {\bfseries lock} ()
void \mbox{\hyperlink{class_lockable_d_object_ade38ca54703913359fc3b4366f6e292a}{lock}} ()
\begin{DoxyCompactList}\small\item\em Locks the mutex to ensure thread-\/safe access. \end{DoxyCompactList}\item
\Hypertarget{class_lockable_d_object_a1481ed99dcd837490bf28309aadaedfb}\label{class_lockable_d_object_a1481ed99dcd837490bf28309aadaedfb}
void {\bfseries unlock} ()
void \mbox{\hyperlink{class_lockable_d_object_a1481ed99dcd837490bf28309aadaedfb}{unlock}} ()
\begin{DoxyCompactList}\small\item\em Unlocks the mutex after thread-\/safe access. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
\mbox{\hyperlink{class_d_object}{DObject}} \mbox{\hyperlink{class_lockable_d_object_a1eb1ca1d9cf979dcb9eead96054b89bb}{object\+\_\+}}
\begin{DoxyCompactList}\small\item\em The underlying \doxylink{class_d_object}{DObject} instance. \end{DoxyCompactList}\item
std\+::mutex \mbox{\hyperlink{class_lockable_d_object_a712cd3ea0c565f7e9089a651ef79b7bd}{mutex\+\_\+}}
\begin{DoxyCompactList}\small\item\em Mutex for thread-\/safe access. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection{Detailed Description}
Wrapper for \doxylink{class_d_object}{DObject} with thread-\/safe access.
Definition at line \mbox{\hyperlink{_lockable_d_object_8h_source_l00039}{39}} of file \mbox{\hyperlink{_lockable_d_object_8h_source}{Lockable\+DObject.\+h}}.
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}\index{LockableDObject@{LockableDObject}!LockableDObject@{LockableDObject}}
\index{LockableDObject@{LockableDObject}!LockableDObject@{LockableDObject}}
\doxysubsubsection{\texorpdfstring{LockableDObject()}{LockableDObject()}}
{\footnotesize\ttfamily \label{class_lockable_d_object_ae1a174a2740fa053626fe2820ee0efee}
Lockable\+DObject\+::\+Lockable\+DObject (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}}
Default constructor.
\doxysubsection{Member Function Documentation}
\Hypertarget{class_lockable_d_object_adcfe201fc728cc1c6fcf638a566ba9a1}\index{LockableDObject@{LockableDObject}!get@{get}}
\index{get@{get}!LockableDObject@{LockableDObject}}
@@ -44,7 +65,70 @@ A reference to the wrapped \doxylink{class_d_object}{DObject}.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_lockable_d_object_8cpp_source_l00026}{26}} of file \mbox{\hyperlink{_lockable_d_object_8cpp_source}{Lockable\+DObject.\+cpp}}.
\Hypertarget{class_lockable_d_object_ade38ca54703913359fc3b4366f6e292a}\index{LockableDObject@{LockableDObject}!lock@{lock}}
\index{lock@{lock}!LockableDObject@{LockableDObject}}
\doxysubsubsection{\texorpdfstring{lock()}{lock()}}
{\footnotesize\ttfamily \label{class_lockable_d_object_ade38ca54703913359fc3b4366f6e292a}
void Lockable\+DObject\+::lock (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
Locks the mutex to ensure thread-\/safe access.
Definition at line \mbox{\hyperlink{_lockable_d_object_8cpp_source_l00033}{33}} of file \mbox{\hyperlink{_lockable_d_object_8cpp_source}{Lockable\+DObject.\+cpp}}.
\Hypertarget{class_lockable_d_object_a1481ed99dcd837490bf28309aadaedfb}\index{LockableDObject@{LockableDObject}!unlock@{unlock}}
\index{unlock@{unlock}!LockableDObject@{LockableDObject}}
\doxysubsubsection{\texorpdfstring{unlock()}{unlock()}}
{\footnotesize\ttfamily \label{class_lockable_d_object_a1481ed99dcd837490bf28309aadaedfb}
void Lockable\+DObject\+::unlock (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})}
Unlocks the mutex after thread-\/safe access.
Definition at line \mbox{\hyperlink{_lockable_d_object_8cpp_source_l00040}{40}} of file \mbox{\hyperlink{_lockable_d_object_8cpp_source}{Lockable\+DObject.\+cpp}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{class_lockable_d_object_a712cd3ea0c565f7e9089a651ef79b7bd}\index{LockableDObject@{LockableDObject}!mutex\_@{mutex\_}}
\index{mutex\_@{mutex\_}!LockableDObject@{LockableDObject}}
\doxysubsubsection{\texorpdfstring{mutex\_}{mutex\_}}
{\footnotesize\ttfamily \label{class_lockable_d_object_a712cd3ea0c565f7e9089a651ef79b7bd}
std\+::mutex Lockable\+DObject\+::mutex\+\_\+\hspace{0.3cm}{\ttfamily [private]}}
Mutex for thread-\/safe access.
Definition at line \mbox{\hyperlink{_lockable_d_object_8h_source_l00064}{64}} of file \mbox{\hyperlink{_lockable_d_object_8h_source}{Lockable\+DObject.\+h}}.
\Hypertarget{class_lockable_d_object_a1eb1ca1d9cf979dcb9eead96054b89bb}\index{LockableDObject@{LockableDObject}!object\_@{object\_}}
\index{object\_@{object\_}!LockableDObject@{LockableDObject}}
\doxysubsubsection{\texorpdfstring{object\_}{object\_}}
{\footnotesize\ttfamily \label{class_lockable_d_object_a1eb1ca1d9cf979dcb9eead96054b89bb}
\mbox{\hyperlink{class_d_object}{DObject}} Lockable\+DObject\+::object\+\_\+\hspace{0.3cm}{\ttfamily [private]}}
The underlying \doxylink{class_d_object}{DObject} instance.
Definition at line \mbox{\hyperlink{_lockable_d_object_8h_source_l00063}{63}} of file \mbox{\hyperlink{_lockable_d_object_8h_source}{Lockable\+DObject.\+h}}.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
src/dobj/public/\mbox{\hyperlink{_lockable_d_object_8h}{Lockable\+DObject.\+h}}\item
src/dobj/private/Lockable\+DObject.\+cpp\end{DoxyCompactItemize}
src/dobj/private/\mbox{\hyperlink{_lockable_d_object_8cpp}{Lockable\+DObject.\+cpp}}\end{DoxyCompactItemize}

View File

@@ -12,8 +12,7 @@ Represents metadata information for data objects in the dobj module.
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item
\Hypertarget{class_metadata_ae849560667461008cb72e83919c20be0}\label{class_metadata_ae849560667461008cb72e83919c20be0}
{\bfseries Metadata} ()=default
\mbox{\hyperlink{class_metadata_ae849560667461008cb72e83919c20be0}{Metadata}} ()=default
\begin{DoxyCompactList}\small\item\em Default constructor for \doxylink{class_metadata}{Metadata}. \end{DoxyCompactList}\item
\mbox{\hyperlink{class_metadata_a3d56c8c5adee4b8c7d2089802211522b}{Metadata}} (std\+::size\+\_\+t byte\+Size, std\+::string data\+Type, std\+::vector$<$ std\+::size\+\_\+t $>$ dimensions, bool debug\+Flag=false)
\begin{DoxyCompactList}\small\item\em Constructor to initialize \doxylink{class_metadata}{Metadata} with specific attributes. \end{DoxyCompactList}\item
@@ -33,6 +32,17 @@ bool \mbox{\hyperlink{class_metadata_abe52c81e04665628666b4140cd346b69}{is\+Debu
\begin{DoxyCompactList}\small\item\em Checks if debugging information is enabled. \end{DoxyCompactList}\item
void \mbox{\hyperlink{class_metadata_a365c4594ad65c3b10b40a1cf4f4aea26}{set\+Debug\+Enabled}} (bool debug\+Flag) noexcept
\begin{DoxyCompactList}\small\item\em Sets the debugging flag. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item
int \mbox{\hyperlink{class_metadata_ac73a509797c98c0d52fb32e1f93e38bc}{byte\+Size\+\_\+}} = 0
\begin{DoxyCompactList}\small\item\em Total size of the data in bytes. \end{DoxyCompactList}\item
std\+::string \mbox{\hyperlink{class_metadata_a290205e5f46416dd0f48bd6ff62888ac}{data\+Type\+\_\+}}
\begin{DoxyCompactList}\small\item\em Type of the data (e.\+g., "{}float"{}, "{}double"{}). \end{DoxyCompactList}\item
std\+::vector$<$ std\+::size\+\_\+t $>$ \mbox{\hyperlink{class_metadata_a163f74d4ef9ecd13a34e7e9cab2e21ce}{dimensions\+\_\+}}
\begin{DoxyCompactList}\small\item\em Dimensions of the data (e.\+g., \{3, 4\} for a 3x4 matrix). \end{DoxyCompactList}\item
bool \mbox{\hyperlink{class_metadata_a65fd506f1bd41699d9cd19bc0dfc9701}{debug\+Flag\+\_\+}} = false
\begin{DoxyCompactList}\small\item\em Indicates whether debugging is enabled. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Friends}
\begin{DoxyCompactItemize}
\item
@@ -45,10 +55,24 @@ Represents metadata information for data objects in the dobj module.
The \doxylink{class_metadata}{Metadata} class encapsulates details such as data size, type, dimensions, and optional debugging flags. It is designed to provide descriptive attributes in a lightweight and efficient manner.
Definition at line \mbox{\hyperlink{_metadata_8h_source_l00051}{51}} of file \mbox{\hyperlink{_metadata_8h_source}{Metadata.\+h}}.
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{class_metadata_ae849560667461008cb72e83919c20be0}\index{Metadata@{Metadata}!Metadata@{Metadata}}
\index{Metadata@{Metadata}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{Metadata()}{Metadata()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily \label{class_metadata_ae849560667461008cb72e83919c20be0}
Metadata\+::\+Metadata (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}}
Default constructor for \doxylink{class_metadata}{Metadata}.
\Hypertarget{class_metadata_a3d56c8c5adee4b8c7d2089802211522b}\index{Metadata@{Metadata}!Metadata@{Metadata}}
\index{Metadata@{Metadata}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{Metadata()}{Metadata()}}
\doxysubsubsection{\texorpdfstring{Metadata()}{Metadata()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily \label{class_metadata_a3d56c8c5adee4b8c7d2089802211522b}
Metadata\+::\+Metadata (\begin{DoxyParamCaption}\item[{std\+::size\+\_\+t}]{byte\+Size}{, }\item[{std\+::string}]{data\+Type}{, }\item[{std\+::vector$<$ std\+::size\+\_\+t $>$}]{dimensions}{, }\item[{bool}]{debug\+Flag}{ = {\ttfamily false}}\end{DoxyParamCaption})}
@@ -69,6 +93,10 @@ Constructor to initialize \doxylink{class_metadata}{Metadata} with specific attr
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00040}{40}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\doxysubsection{Member Function Documentation}
\Hypertarget{class_metadata_ac7980d1efdd6ae434f0115f83d08348e}\index{Metadata@{Metadata}!getByteSize@{getByteSize}}
\index{getByteSize@{getByteSize}!Metadata@{Metadata}}
@@ -88,6 +116,10 @@ The size is often required for memory allocation and validation in numerical rou
\begin{DoxyReturn}{Returns}
The total byte size of the data.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00050}{50}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\Hypertarget{class_metadata_aeed7f22ccc61d9a3d6425441d381dcdc}\index{Metadata@{Metadata}!getDataType@{getDataType}}
\index{getDataType@{getDataType}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{getDataType()}{getDataType()}}
@@ -106,6 +138,10 @@ The type (e.\+g., "{}float"{}, "{}double"{}) is critical for casting raw data or
\begin{DoxyReturn}{Returns}
A string representing the data type.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00074}{74}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\Hypertarget{class_metadata_a412c0c0b8754d85f9edbbdcd637f3b20}\index{Metadata@{Metadata}!getDimensions@{getDimensions}}
\index{getDimensions@{getDimensions}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{getDimensions()}{getDimensions()}}
@@ -124,6 +160,10 @@ Dimensions define the shape of the data (e.\+g., 2D arrays, 3D matrices). This i
\begin{DoxyReturn}{Returns}
A vector representing the size of each dimension.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00098}{98}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\Hypertarget{class_metadata_abe52c81e04665628666b4140cd346b69}\index{Metadata@{Metadata}!isDebugEnabled@{isDebugEnabled}}
\index{isDebugEnabled@{isDebugEnabled}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{isDebugEnabled()}{isDebugEnabled()}}
@@ -142,6 +182,10 @@ Debugging flags can be useful for tracking performance metrics or error provenan
\begin{DoxyReturn}{Returns}
True if debugging is enabled, false otherwise.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00120}{120}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\Hypertarget{class_metadata_a07035de7b0c780ef340e1a11c60a4d2b}\index{Metadata@{Metadata}!setByteSize@{setByteSize}}
\index{setByteSize@{setByteSize}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{setByteSize()}{setByteSize()}}
@@ -164,6 +208,10 @@ It\textquotesingle{}s important to ensure this matches the actual data size in m
{\em byte\+Size} & The total byte size to set. \\
\hline
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00062}{62}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\Hypertarget{class_metadata_a88f4f57d443e2b7664e75e57a29dfbf0}\index{Metadata@{Metadata}!setDataType@{setDataType}}
\index{setDataType@{setDataType}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{setDataType()}{setDataType()}}
@@ -186,6 +234,10 @@ When setting the data type, ensure it aligns with the underlying data representa
{\em data\+Type} & A string representing the data type. \\
\hline
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00086}{86}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\Hypertarget{class_metadata_a365c4594ad65c3b10b40a1cf4f4aea26}\index{Metadata@{Metadata}!setDebugEnabled@{setDebugEnabled}}
\index{setDebugEnabled@{setDebugEnabled}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{setDebugEnabled()}{setDebugEnabled()}}
@@ -208,6 +260,10 @@ Enabling debugging can introduce performance overhead but provides valuable insi
{\em debug\+Flag} & Whether debugging is enabled. \\
\hline
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00132}{132}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\Hypertarget{class_metadata_af5264d1666839e69c192b565b5cfa606}\index{Metadata@{Metadata}!setDimensions@{setDimensions}}
\index{setDimensions@{setDimensions}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{setDimensions()}{setDimensions()}}
@@ -232,6 +288,10 @@ When modifying dimensions, verify that they are consistent with the actual data
\end{DoxyParams}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00109}{109}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\doxysubsection{Friends And Related Symbol Documentation}
\Hypertarget{class_metadata_a12949a1ea26c4ff1afeb97101c0493c5}\index{Metadata@{Metadata}!operator$<$$<$@{operator$<$$<$}}
\index{operator$<$$<$@{operator$<$$<$}!Metadata@{Metadata}}
@@ -267,6 +327,69 @@ A reference to the output stream.
\end{DoxyReturn}
Definition at line \mbox{\hyperlink{_metadata_8cpp_source_l00146}{146}} of file \mbox{\hyperlink{_metadata_8cpp_source}{Metadata.\+cpp}}.
\doxysubsection{Member Data Documentation}
\Hypertarget{class_metadata_ac73a509797c98c0d52fb32e1f93e38bc}\index{Metadata@{Metadata}!byteSize\_@{byteSize\_}}
\index{byteSize\_@{byteSize\_}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{byteSize\_}{byteSize\_}}
{\footnotesize\ttfamily \label{class_metadata_ac73a509797c98c0d52fb32e1f93e38bc}
int Metadata\+::byte\+Size\+\_\+ = 0\hspace{0.3cm}{\ttfamily [private]}}
Total size of the data in bytes.
Definition at line \mbox{\hyperlink{_metadata_8h_source_l00126}{126}} of file \mbox{\hyperlink{_metadata_8h_source}{Metadata.\+h}}.
\Hypertarget{class_metadata_a290205e5f46416dd0f48bd6ff62888ac}\index{Metadata@{Metadata}!dataType\_@{dataType\_}}
\index{dataType\_@{dataType\_}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{dataType\_}{dataType\_}}
{\footnotesize\ttfamily \label{class_metadata_a290205e5f46416dd0f48bd6ff62888ac}
std\+::string Metadata\+::data\+Type\+\_\+\hspace{0.3cm}{\ttfamily [private]}}
Type of the data (e.\+g., "{}float"{}, "{}double"{}).
Definition at line \mbox{\hyperlink{_metadata_8h_source_l00127}{127}} of file \mbox{\hyperlink{_metadata_8h_source}{Metadata.\+h}}.
\Hypertarget{class_metadata_a65fd506f1bd41699d9cd19bc0dfc9701}\index{Metadata@{Metadata}!debugFlag\_@{debugFlag\_}}
\index{debugFlag\_@{debugFlag\_}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{debugFlag\_}{debugFlag\_}}
{\footnotesize\ttfamily \label{class_metadata_a65fd506f1bd41699d9cd19bc0dfc9701}
bool Metadata\+::debug\+Flag\+\_\+ = false\hspace{0.3cm}{\ttfamily [private]}}
Indicates whether debugging is enabled.
Definition at line \mbox{\hyperlink{_metadata_8h_source_l00129}{129}} of file \mbox{\hyperlink{_metadata_8h_source}{Metadata.\+h}}.
\Hypertarget{class_metadata_a163f74d4ef9ecd13a34e7e9cab2e21ce}\index{Metadata@{Metadata}!dimensions\_@{dimensions\_}}
\index{dimensions\_@{dimensions\_}!Metadata@{Metadata}}
\doxysubsubsection{\texorpdfstring{dimensions\_}{dimensions\_}}
{\footnotesize\ttfamily \label{class_metadata_a163f74d4ef9ecd13a34e7e9cab2e21ce}
std\+::vector$<$std\+::size\+\_\+t$>$ Metadata\+::dimensions\+\_\+\hspace{0.3cm}{\ttfamily [private]}}
Dimensions of the data (e.\+g., \{3, 4\} for a 3x4 matrix).
Definition at line \mbox{\hyperlink{_metadata_8h_source_l00128}{128}} of file \mbox{\hyperlink{_metadata_8h_source}{Metadata.\+h}}.
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item
src/dobj/public/\mbox{\hyperlink{_metadata_8h}{Metadata.\+h}}\item

View File

@@ -20,6 +20,8 @@
\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 ----------------
@@ -103,7 +105,15 @@
% Necessary for hanging indent
\newlength{\DoxyCodeWidth}
\newcommand\DoxyCodeLine[1]{\hangpara{\DoxyCodeWidth}{1}{#1}\par}
\newcommand\DoxyCodeLine[1]{
\ifthenelse{\equal{\detokenize{#1}}{}}
{
\vspace*{\baselineskip}
}
{
\hangpara{\DoxyCodeWidth}{1}{#1}\par
}
}
\newcommand\NiceSpace{%
\discretionary{}{\kern\fontdimen2\font}{\kern\fontdimen2\font}%
@@ -112,6 +122,7 @@
% Used by @code ... @endcode
\newenvironment{DoxyCode}[1]{%
\par%
\vspace{2pt}%
\scriptsize%
\normalfont\ttfamily%
\rightskip0pt plus 1fil%
@@ -119,14 +130,14 @@
\settowidth{\CodeWidthChar}{?}%
\settoheight{\CodeHeightChar}{?}%
\setlength{\parskip}{0ex plus 0ex minus 0ex}%
\ifthenelse{\equal{#1}{0}}
{
\ifthenelse{\equal{#1}{0}}%
{%
{\lccode`~32 \lowercase{\global\let~}\NiceSpace}\obeyspaces%
}
{
}%
{%
{\lccode`~32 \lowercase{\global\let~}}\obeyspaces%
}
}%
\vspace{2pt}%
}{%
\normalfont%
\normalsize%
@@ -148,6 +159,7 @@
% Used by @verbatim ... @endverbatim
\newenvironment{DoxyVerb}{%
\par%
\footnotesize%
\verbatim%
}{%
@@ -163,18 +175,34 @@
}
% Used by numbered lists (using '-#' or <ol> ... </ol>)
\newenvironment{DoxyEnumerate}{%
\enumerate%
}{%
\endenumerate%
}
\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>)
\newenvironment{DoxyItemize}{%
\itemize%
}{%
\enditemize%
}
\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}{%
@@ -213,6 +241,13 @@
\end{DoxyDesc}%
}
% Used by @important
\newenvironment{DoxyImportant}[1]{%
\begin{DoxyDesc}{#1}%
}{%
\end{DoxyDesc}%
}
% Used by @author and @authors
\newenvironment{DoxyAuthor}[1]{%
\begin{DoxyDesc}{#1}%
@@ -304,12 +339,6 @@
\end{DoxyDesc}%
}
% Used by @internal
\newenvironment{DoxyInternal}[1]{%
\paragraph*{#1}%
}{%
}
% Used by @par and @paragraph
\newenvironment{DoxyParagraph}[1]{%
\begin{DoxyDesc}{#1}%
@@ -355,14 +384,16 @@
}
% Used for fields simple class style enums
\newenvironment{DoxyEnumFields}[1]{%
\newenvironment{DoxyEnumFields}[2][]{%
\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]%
\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} #1}\\[1ex]%
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
\hline%
\endhead%
}{%
@@ -372,7 +403,7 @@
% Used for parameters within a detailed function description
\newenvironment{DoxyParamCaption}{%
\renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}%
\renewcommand{\item}[3][]{\\ \hspace*{2.0cm} ##1 {\em ##2}##3}%
}{%
}
@@ -506,11 +537,29 @@
\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}%
@@ -533,6 +582,7 @@
\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}
@@ -547,10 +597,29 @@
% 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}}
{-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}%
@@ -559,18 +628,87 @@
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
{\raggedright\normalfont\normalsize\bfseries}}
\newcommand\doxyparagraph{\@startsection{paragraph}{4}{\z@}%
{3.25ex \@plus1ex \@minus.2ex}%
{-1em}%
{\raggedright\normalfont\normalsize\bfseries}}
\newcommand\doxysubparagraph{\@startsection{subparagraph}{5}{\parindent}%
{3.25ex \@plus1ex \@minus .2ex}%
{-1em}%
{\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}

View File

@@ -1,39 +1,59 @@
\doxysection{File List}
Here is a list of all files with brief descriptions\+:\begin{DoxyCompactList}
\item\contentsline{section}{src/composition/private/\mbox{\hyperlink{composition_8cpp}{composition.\+cpp}} }{\pageref{composition_8cpp}}{}
\item\contentsline{section}{src/composition/public/\mbox{\hyperlink{composition_8h}{composition.\+h}} }{\pageref{composition_8h}}{}
\item\contentsline{section}{src/config/private/\mbox{\hyperlink{config_8cpp}{config.\+cpp}} }{\pageref{config_8cpp}}{}
\item\contentsline{section}{src/config/public/\mbox{\hyperlink{config_8h}{config.\+h}} }{\pageref{config_8h}}{}
\item\contentsline{section}{src/const/private/\mbox{\hyperlink{const_8cpp}{const.\+cpp}} }{\pageref{const_8cpp}}{}
\item\contentsline{section}{src/const/public/\mbox{\hyperlink{const_8h}{const.\+h}} }{\pageref{const_8h}}{}
\item\contentsline{section}{src/dobj/private/\mbox{\hyperlink{DObject_8cpp}{DObject.\+cpp}} \\*Implementation of the \mbox{\hyperlink{classDObject}{DObject}} class }{\pageref{DObject_8cpp}}{}
\item\contentsline{section}{src/dobj/private/\mbox{\hyperlink{LockableDObject_8cpp}{Lockable\+DObject.\+cpp}} }{\pageref{LockableDObject_8cpp}}{}
\item\contentsline{section}{src/dobj/private/\mbox{\hyperlink{Metadata_8cpp}{Metadata.\+cpp}} \\*Implementation of the \mbox{\hyperlink{classMetadata}{Metadata}} class used in the dobj module }{\pageref{Metadata_8cpp}}{}
\item\contentsline{section}{src/dobj/public/\mbox{\hyperlink{DObject_8h}{DObject.\+h}} \\*Defines the \mbox{\hyperlink{classDObject}{DObject}} class, a universal data container for the project }{\pageref{DObject_8h}}{}
\item\contentsline{section}{src/dobj/public/\mbox{\hyperlink{LockableDObject_8h}{Lockable\+DObject.\+h}} \\*A lightweight wrapper for \mbox{\hyperlink{classDObject}{DObject}} that adds locking capabilities }{\pageref{LockableDObject_8h}}{}
\item\contentsline{section}{src/dobj/public/\mbox{\hyperlink{Metadata_8h}{Metadata.\+h}} \\*Public interface for the \mbox{\hyperlink{classMetadata}{Metadata}} class used in the dobj module }{\pageref{Metadata_8h}}{}
\item\contentsline{section}{src/mesh\+IO/private/\mbox{\hyperlink{meshIO_8cpp}{mesh\+IO.\+cpp}} }{\pageref{meshIO_8cpp}}{}
\item\contentsline{section}{src/mesh\+IO/public/\mbox{\hyperlink{meshIO_8h}{mesh\+IO.\+h}} }{\pageref{meshIO_8h}}{}
\item\contentsline{section}{src/dobj/private/\mbox{\hyperlink{_d_object_8cpp}{DObject.\+cpp}} \\*Implementation of the \doxylink{class_d_object}{DObject} class }{\pageref{_d_object_8cpp}}{}
\item\contentsline{section}{src/dobj/private/\mbox{\hyperlink{_lockable_d_object_8cpp}{Lockable\+DObject.\+cpp}} }{\pageref{_lockable_d_object_8cpp}}{}
\item\contentsline{section}{src/dobj/private/\mbox{\hyperlink{_metadata_8cpp}{Metadata.\+cpp}} \\*Implementation of the \doxylink{class_metadata}{Metadata} class used in the dobj module }{\pageref{_metadata_8cpp}}{}
\item\contentsline{section}{src/dobj/public/\mbox{\hyperlink{_d_object_8h}{DObject.\+h}} \\*Defines the \doxylink{class_d_object}{DObject} class, a universal data container for the project }{\pageref{_d_object_8h}}{}
\item\contentsline{section}{src/dobj/public/\mbox{\hyperlink{_lockable_d_object_8h}{Lockable\+DObject.\+h}} \\*A lightweight wrapper for \doxylink{class_d_object}{DObject} that adds locking capabilities }{\pageref{_lockable_d_object_8h}}{}
\item\contentsline{section}{src/dobj/public/\mbox{\hyperlink{_metadata_8h}{Metadata.\+h}} \\*Public interface for the \doxylink{class_metadata}{Metadata} class used in the dobj module }{\pageref{_metadata_8h}}{}
\item\contentsline{section}{src/eos/private/\mbox{\hyperlink{eos_i_o_8cpp}{eos\+IO.\+cpp}} }{\pageref{eos_i_o_8cpp}}{}
\item\contentsline{section}{src/eos/private/\mbox{\hyperlink{helm_8cpp}{helm.\+cpp}} }{\pageref{helm_8cpp}}{}
\item\contentsline{section}{src/eos/public/\mbox{\hyperlink{eos_i_o_8h}{eos\+IO.\+h}} }{\pageref{eos_i_o_8h}}{}
\item\contentsline{section}{src/eos/public/\mbox{\hyperlink{helm_8h}{helm.\+h}} }{\pageref{helm_8h}}{}
\item\contentsline{section}{src/mesh\+IO/private/\mbox{\hyperlink{mesh_i_o_8cpp}{mesh\+IO.\+cpp}} }{\pageref{mesh_i_o_8cpp}}{}
\item\contentsline{section}{src/mesh\+IO/public/\mbox{\hyperlink{mesh_i_o_8h}{mesh\+IO.\+h}} }{\pageref{mesh_i_o_8h}}{}
\item\contentsline{section}{src/misc/macros/\mbox{\hyperlink{debug_8h}{debug.\+h}} \\*Defines a macro for triggering a breakpoint in different compilers and platforms }{\pageref{debug_8h}}{}
\item\contentsline{section}{src/misc/macros/\mbox{\hyperlink{warning__control_8h}{warning\+\_\+control.\+h}} }{\pageref{warning__control_8h}}{}
\item\contentsline{section}{src/network/private/\mbox{\hyperlink{approx8_8cpp}{approx8.\+cpp}} }{\pageref{approx8_8cpp}}{}
\item\contentsline{section}{src/network/private/\mbox{\hyperlink{network_8cpp}{network.\+cpp}} }{\pageref{network_8cpp}}{}
\item\contentsline{section}{src/network/public/\mbox{\hyperlink{approx8_8h}{approx8.\+h}} \\*Header file for the Approx8 nuclear reaction network }{\pageref{approx8_8h}}{}
\item\contentsline{section}{src/network/public/\mbox{\hyperlink{network_8h}{network.\+h}} }{\pageref{network_8h}}{}
\item\contentsline{section}{src/opac/public/\mbox{\hyperlink{opac_8h}{opac.\+h}} }{\pageref{opac_8h}}{}
\item\contentsline{section}{src/opat\+IO/private/\mbox{\hyperlink{opatIO_8cpp}{opat\+IO.\+cpp}} }{\pageref{opatIO_8cpp}}{}
\item\contentsline{section}{src/opat\+IO/public/\mbox{\hyperlink{opatIO_8h}{opat\+IO.\+h}} }{\pageref{opatIO_8h}}{}
\item\contentsline{section}{src/poly/coeff/private/\mbox{\hyperlink{polyCoeff_8cpp}{poly\+Coeff.\+cpp}} }{\pageref{polyCoeff_8cpp}}{}
\item\contentsline{section}{src/poly/coeff/public/\mbox{\hyperlink{polyCoeff_8h}{poly\+Coeff.\+h}} }{\pageref{polyCoeff_8h}}{}
\item\contentsline{section}{src/poly/utils/private/\mbox{\hyperlink{polyIO_8cpp}{poly\+IO.\+cpp}} }{\pageref{polyIO_8cpp}}{}
\item\contentsline{section}{src/poly/utils/private/\mbox{\hyperlink{polyMFEMUtils_8cpp}{poly\+MFEMUtils.\+cpp}} }{\pageref{polyMFEMUtils_8cpp}}{}
\item\contentsline{section}{src/poly/utils/public/\mbox{\hyperlink{polyIO_8h}{poly\+IO.\+h}} }{\pageref{polyIO_8h}}{}
\item\contentsline{section}{src/poly/utils/public/\mbox{\hyperlink{polyMFEMUtils_8h}{poly\+MFEMUtils.\+h}} }{\pageref{polyMFEMUtils_8h}}{}
\item\contentsline{section}{tests/config/\mbox{\hyperlink{configTest_8cpp}{config\+Test.\+cpp}} \\*Unit tests for the \mbox{\hyperlink{classConfig}{Config}} class }{\pageref{configTest_8cpp}}{}
\item\contentsline{section}{tests/const/\mbox{\hyperlink{constTest_8cpp}{const\+Test.\+cpp}} \\*Unit tests for the const class }{\pageref{constTest_8cpp}}{}
\item\contentsline{section}{tests/dobj/\mbox{\hyperlink{DObjectTest_8cpp}{DObject\+Test.\+cpp}} \\*Unit tests for the \mbox{\hyperlink{classDObject}{DObject}} class }{\pageref{DObjectTest_8cpp}}{}
\item\contentsline{section}{tests/dobj/\mbox{\hyperlink{LockableDObjectTest_8cpp}{Lockable\+DObject\+Test.\+cpp}} \\*Unit tests for the \mbox{\hyperlink{classLockableDObject}{Lockable\+DObject}} class }{\pageref{LockableDObjectTest_8cpp}}{}
\item\contentsline{section}{tests/dobj/\mbox{\hyperlink{MetadataTest_8cpp}{Metadata\+Test.\+cpp}} \\*Unit tests and integration tests for the \mbox{\hyperlink{classMetadata}{Metadata}} class }{\pageref{MetadataTest_8cpp}}{}
\item\contentsline{section}{tests/dobj\+\_\+sandbox/\mbox{\hyperlink{testDObject_8cpp}{test\+DObject.\+cpp}} }{\pageref{testDObject_8cpp}}{}
\item\contentsline{section}{tests/mesh\+IO/\mbox{\hyperlink{meshIOTest_8cpp}{mesh\+IOTest.\+cpp}} }{\pageref{meshIOTest_8cpp}}{}
\item\contentsline{section}{tests/opat\+IO/\mbox{\hyperlink{opatIOTest_8cpp}{opat\+IOTest.\+cpp}} \\*Unit tests for the \mbox{\hyperlink{classOpatIO}{Opat\+IO}} class and associated structs }{\pageref{opatIOTest_8cpp}}{}
\item\contentsline{section}{utils/opatio/build/lib/opatio/\mbox{\hyperlink{build_2lib_2opatio_2____init_____8py}{\+\_\+\+\_\+init\+\_\+\+\_\+.\+py}} }{\pageref{build_2lib_2opatio_2____init_____8py}}{}
\item\contentsline{section}{utils/opatio/build/lib/opatio/opat/\mbox{\hyperlink{build_2lib_2opatio_2opat_2____init_____8py}{\+\_\+\+\_\+init\+\_\+\+\_\+.\+py}} }{\pageref{build_2lib_2opatio_2opat_2____init_____8py}}{}
\item\contentsline{section}{utils/opatio/build/lib/opatio/opat/\mbox{\hyperlink{build_2lib_2opatio_2opat_2opat_8py}{opat.\+py}} }{\pageref{build_2lib_2opatio_2opat_2opat_8py}}{}
\item\contentsline{section}{utils/opatio/src/opatio/\mbox{\hyperlink{src_2opatio_2____init_____8py}{\+\_\+\+\_\+init\+\_\+\+\_\+.\+py}} }{\pageref{src_2opatio_2____init_____8py}}{}
\item\contentsline{section}{utils/opatio/src/opatio/opat/\mbox{\hyperlink{src_2opatio_2opat_2____init_____8py}{\+\_\+\+\_\+init\+\_\+\+\_\+.\+py}} }{\pageref{src_2opatio_2opat_2____init_____8py}}{}
\item\contentsline{section}{utils/opatio/src/opatio/opat/\mbox{\hyperlink{src_2opatio_2opat_2opat_8py}{opat.\+py}} }{\pageref{src_2opatio_2opat_2opat_8py}}{}
\item\contentsline{section}{utils/opatio/utils/\mbox{\hyperlink{mkTestData_8py}{mk\+Test\+Data.\+py}} }{\pageref{mkTestData_8py}}{}
\item\contentsline{section}{src/poly/coeff/private/\mbox{\hyperlink{poly_coeff_8cpp}{poly\+Coeff.\+cpp}} }{\pageref{poly_coeff_8cpp}}{}
\item\contentsline{section}{src/poly/coeff/public/\mbox{\hyperlink{poly_coeff_8h}{poly\+Coeff.\+h}} }{\pageref{poly_coeff_8h}}{}
\item\contentsline{section}{src/poly/solver/private/\mbox{\hyperlink{poly_solver_8cpp}{poly\+Solver.\+cpp}} }{\pageref{poly_solver_8cpp}}{}
\item\contentsline{section}{src/poly/solver/public/\mbox{\hyperlink{poly_solver_8h}{poly\+Solver.\+h}} }{\pageref{poly_solver_8h}}{}
\item\contentsline{section}{src/poly/utils/private/\mbox{\hyperlink{integrators_8cpp}{integrators.\+cpp}} }{\pageref{integrators_8cpp}}{}
\item\contentsline{section}{src/poly/utils/private/\mbox{\hyperlink{polytrope_operator_8cpp}{polytrope\+Operator.\+cpp}} }{\pageref{polytrope_operator_8cpp}}{}
\item\contentsline{section}{src/poly/utils/private/\mbox{\hyperlink{utilities_8cpp}{utilities.\+cpp}} }{\pageref{utilities_8cpp}}{}
\item\contentsline{section}{src/poly/utils/public/\mbox{\hyperlink{integrators_8h}{integrators.\+h}} \\*A collection of utilities for working with MFEM and solving the lane-\/emden equation }{\pageref{integrators_8h}}{}
\item\contentsline{section}{src/poly/utils/public/\mbox{\hyperlink{polytrope_operator_8h}{polytrope\+Operator.\+h}} }{\pageref{polytrope_operator_8h}}{}
\item\contentsline{section}{src/poly/utils/public/\mbox{\hyperlink{utilities_8h}{utilities.\+h}} }{\pageref{utilities_8h}}{}
\item\contentsline{section}{src/probe/private/\mbox{\hyperlink{probe_8cpp}{probe.\+cpp}} }{\pageref{probe_8cpp}}{}
\item\contentsline{section}{src/probe/public/\mbox{\hyperlink{probe_8h}{probe.\+h}} }{\pageref{probe_8h}}{}
\item\contentsline{section}{src/resource/private/\mbox{\hyperlink{resource_manager_8cpp}{resource\+Manager.\+cpp}} }{\pageref{resource_manager_8cpp}}{}
\item\contentsline{section}{src/resource/private/\mbox{\hyperlink{resource_manager_types_8cpp}{resource\+Manager\+Types.\+cpp}} }{\pageref{resource_manager_types_8cpp}}{}
\item\contentsline{section}{src/resource/public/\mbox{\hyperlink{resource_manager_8h}{resource\+Manager.\+h}} }{\pageref{resource_manager_8h}}{}
\item\contentsline{section}{src/resource/public/\mbox{\hyperlink{resource_manager_types_8h}{resource\+Manager\+Types.\+h}} \\*Defines types and functions for managing resources }{\pageref{resource_manager_types_8h}}{}
\item\contentsline{section}{src/types/public/\mbox{\hyperlink{4_d_s_t_a_r_types_8h}{4\+DSTARTypes.\+h}} }{\pageref{4_d_s_t_a_r_types_8h}}{}
\item\contentsline{section}{tests/composition/\mbox{\hyperlink{composition_test_8cpp}{composition\+Test.\+cpp}} }{\pageref{composition_test_8cpp}}{}
\item\contentsline{section}{tests/composition\+\_\+sandbox/\mbox{\hyperlink{comp_8cpp}{comp.\+cpp}} }{\pageref{comp_8cpp}}{}
\item\contentsline{section}{tests/config/\mbox{\hyperlink{config_test_8cpp}{config\+Test.\+cpp}} \\*Unit tests for the \doxylink{class_config}{Config} class }{\pageref{config_test_8cpp}}{}
\item\contentsline{section}{tests/const/\mbox{\hyperlink{const_test_8cpp}{const\+Test.\+cpp}} \\*Unit tests for the const class }{\pageref{const_test_8cpp}}{}
\item\contentsline{section}{tests/dobj/\mbox{\hyperlink{_d_object_test_8cpp}{DObject\+Test.\+cpp}} \\*Unit tests for the \doxylink{class_d_object}{DObject} class }{\pageref{_d_object_test_8cpp}}{}
\item\contentsline{section}{tests/dobj/\mbox{\hyperlink{_lockable_d_object_test_8cpp}{Lockable\+DObject\+Test.\+cpp}} \\*Unit tests for the \doxylink{class_lockable_d_object}{Lockable\+DObject} class }{\pageref{_lockable_d_object_test_8cpp}}{}
\item\contentsline{section}{tests/dobj/\mbox{\hyperlink{_metadata_test_8cpp}{Metadata\+Test.\+cpp}} \\*Unit tests and integration tests for the \doxylink{class_metadata}{Metadata} class }{\pageref{_metadata_test_8cpp}}{}
\item\contentsline{section}{tests/dobj\+\_\+sandbox/\mbox{\hyperlink{test_d_object_8cpp}{test\+DObject.\+cpp}} }{\pageref{test_d_object_8cpp}}{}
\item\contentsline{section}{tests/eos/\mbox{\hyperlink{eos_test_8cpp}{eos\+Test.\+cpp}} }{\pageref{eos_test_8cpp}}{}
\item\contentsline{section}{tests/mesh\+IO/\mbox{\hyperlink{mesh_i_o_test_8cpp}{mesh\+IOTest.\+cpp}} }{\pageref{mesh_i_o_test_8cpp}}{}
\item\contentsline{section}{tests/network/\mbox{\hyperlink{approx8_test_8cpp}{approx8\+Test.\+cpp}} }{\pageref{approx8_test_8cpp}}{}
\item\contentsline{section}{tests/poly/\mbox{\hyperlink{poly_test_8cpp}{poly\+Test.\+cpp}} }{\pageref{poly_test_8cpp}}{}
\item\contentsline{section}{tests/probe/\mbox{\hyperlink{probe_test_8cpp}{probe\+Test.\+cpp}} }{\pageref{probe_test_8cpp}}{}
\item\contentsline{section}{tests/resource/\mbox{\hyperlink{resource_manager_test_8cpp}{resource\+Manager\+Test.\+cpp}} }{\pageref{resource_manager_test_8cpp}}{}
\end{DoxyCompactList}

View File

@@ -164,7 +164,7 @@
\ifdim \dimen@>\z@\vfil\break\fi
\global\@colroom\@colht
\ifvoid\LT@foot\else
\advance\vsize-\ht\LT@foot
\global\advance\vsize-\ht\LT@foot
\global\advance\@colroom-\ht\LT@foot
\dimen@\pagegoal\advance\dimen@-\ht\LT@foot\pagegoal\dimen@
\maxdepth\z@
@@ -193,9 +193,13 @@
\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@
\pagegoal\vsize
\endgraf\penalty\z@\addvspace\LTpost
\ifvoid\footins\else\insert\footins{}\fi}
\def\LT@nofcols#1&{%
@@ -392,18 +396,17 @@
\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
\global\@colroom\@colht
\global\vsize\@colht
\vbox
{\unvbox\z@\box\ifvoid\LT@lastfoot\LT@foot\else\LT@lastfoot\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}%
@@ -438,7 +441,15 @@
\the\LT@p@ftn
\global\LT@p@ftn{}%
\hfil}
\def\LT@p@ftntext#1{%
%% 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}}}%

View File

@@ -1,259 +1,432 @@
\let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}\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
\usepackage{fixltx2e}
\usepackage{doxygen}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{makeidx}
\PassOptionsToPackage{warn}{textcomp}
\usepackage{textcomp}
\usepackage[nointegrals]{wasysym}
\usepackage{ifxetex}
% Font selection
\usepackage[T1]{fontenc}
\usepackage[scaled=.90]{helvet}
% 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}
\usepackage{sectsty}
\allsectionsfont{%
\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%
}
\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
\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}%
}
% Indices & bibliography
\usepackage{natbib}
\usepackage[titles]{tocloft}
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{5}
\makeindex
\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}
\newunicodechar{}{${}^{-}$}% Superscript minus
\newunicodechar{²}{${}^{2}$}% Superscript two
\newunicodechar{³}{${}^{3}$}% Superscript three
% Hyperlinks (required, but should be loaded last)
\ifpdf
\usepackage[pdftex,pagebackref=true]{hyperref}
\else
\ifxetex
\usepackage[pagebackref=true]{hyperref}
\else
\usepackage[ps2pdf,pagebackref=true]{hyperref}
\fi
\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
\hypersetup{%
colorlinks=true,%
linkcolor=blue,%
citecolor=blue,%
unicode%
}
% Custom commands
\newcommand{\clearemptydoublepage}{%
\newpage{\pagestyle{empty}\cleardoublepage}%
}
\usepackage{caption}
\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}
\usepackage{etoc}
\etocsettocstyle{\doxytocparskip}{\doxynormalparskip}
\renewcommand{\numberline}[1]{#1~}
% 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={SERiF},%
pdfsubject={3+1\+D Stellar Structure and Evolution}%
}
% 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
\hypersetup{pageanchor=false,
bookmarksnumbered=true,
pdfencoding=unicode
}
\pagenumbering{alph}
\begin{titlepage}
\vspace*{7cm}
\begin{center}%
{\Large New 4DSSE Code \\[1ex]\large 0.\+0.\+1a }\\
\vspace*{1cm}
{\large Generated by Doxygen 1.9.1}\\
\end{center}
\end{titlepage}
\clearemptydoublepage
\pagenumbering{roman}
\tableofcontents
\clearemptydoublepage
\pagenumbering{arabic}
\hypersetup{pageanchor=true}
\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 SERiF}\\
[1ex]\large 0.\+0.\+1a \\
\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{opat\+IO python module}
\label{md_utils_opatio_readme}
\Hypertarget{md_utils_opatio_readme}
\input{md_utils_opatio_readme}
\chapter{Test List}
\label{test}
\Hypertarget{test}
\input{index}
\input{test}
\chapter{Namespace Index}
\input{namespaces}
\chapter{Hierarchical Index}
\input{hierarchy}
\chapter{Class Index}
\input{annotated}
\chapter{File Index}
\input{files}
\chapter{Namespace Documentation}
\input{namespacecomposition}
\input{namespacehelmholtz}
\input{namespacelane_emden}
\input{namespacenn_approx8}
\input{namespacenuclear_network}
\input{namespacepolycoeff}
\input{namespacepoly_m_f_e_m_utils}
\input{namespace_probe}
\input{namespaceserif}
\input{namespaceserif_1_1utilities}
\input{namespace_s_s_e}
\chapter{Class Documentation}
\input{classBilinearIntegratorWrapper}
\input{classCompositeNonlinearIntegrator}
\input{classConfig}
\input{classconfigTest}
\input{classconfigTestPrivateAccessor}
\input{structConstant}
\input{classConstants}
\input{classconstTest}
\input{classDObject}
\input{classDObjectTest}
\input{structHeader}
\input{classLockableDObject}
\input{classLockableDObjectTest}
\input{classMeshIO}
\input{classmeshIOTest}
\input{classMetadata}
\input{classMetadataTest}
\input{classNonlinearPowerIntegrator}
\input{classOpatIO}
\input{classopatIOTest}
\input{structOPATTable}
\input{structTableIndex}
\input{classnn_approx8_1_1_approx8_network}
\input{classapprox8_test}
\input{classcomposition_1_1_composition}
\input{structcomposition_1_1_composition_entry}
\input{classcomposition_test}
\input{class_config}
\input{classconfig_test}
\input{classconfig_test_private_accessor}
\input{struct_constant}
\input{class_constants}
\input{classconst_test}
\input{class_d_object}
\input{class_d_object_test}
\input{structpolycoeff_1_1d_theta_interp_coeff}
\input{structhelmholtz_1_1_e_o_s}
\input{structhelmholtz_1_1_e_o_s_input}
\input{class_eos_i_o}
\input{classeos_test}
\input{structform_bundle}
\input{structcomposition_1_1_global_composition}
\input{class_g_m_r_e_s_inverter}
\input{structhelmholtz_1_1_h_e_l_m_table}
\input{structnn_approx8_1_1_jacobian}
\input{class_lockable_d_object}
\input{class_lockable_d_object_test}
\input{class_probe_1_1_log_manager}
\input{class_mesh_i_o}
\input{classmesh_i_o_test}
\input{class_metadata}
\input{class_metadata_test}
\input{structnn_approx8_1_1_net}
\input{structnuclear_network_1_1_net_in}
\input{structnuclear_network_1_1_net_out}
\input{classnuclear_network_1_1_network}
\input{classpoly_m_f_e_m_utils_1_1_nonlinear_power_integrator}
\input{structnn_approx8_1_1_o_d_e}
\input{class_poly_solver}
\input{classpoly_test}
\input{class_polytrope_operator}
\input{classprobe_test}
\input{class_resource_manager}
\input{classresource_manager_test}
\input{class_schur_compliment}
\input{structsolver_bundle}
\input{structpolycoeff_1_1x1_interp_coeff}
\chapter{File Documentation}
\input{mainpage_8md}
\input{composition_8cpp}
\input{composition_8cpp_source}
\input{composition_8h}
\input{composition_8h_source}
\input{config_8cpp}
\input{config_8cpp_source}
\input{config_8h}
\input{config_8h_source}
\input{const_8cpp}
\input{const_8cpp_source}
\input{const_8h}
\input{DObject_8cpp}
\input{LockableDObject_8cpp}
\input{Metadata_8cpp}
\input{DObject_8h}
\input{LockableDObject_8h}
\input{Metadata_8h}
\input{meshIO_8cpp}
\input{meshIO_8h}
\input{const_8h_source}
\input{_d_object_8cpp}
\input{_d_object_8cpp_source}
\input{_lockable_d_object_8cpp}
\input{_lockable_d_object_8cpp_source}
\input{_metadata_8cpp}
\input{_metadata_8cpp_source}
\input{_d_object_8h}
\input{_d_object_8h_source}
\input{_lockable_d_object_8h}
\input{_lockable_d_object_8h_source}
\input{_metadata_8h}
\input{_metadata_8h_source}
\input{eos_i_o_8cpp}
\input{eos_i_o_8cpp_source}
\input{helm_8cpp}
\input{helm_8cpp_source}
\input{eos_i_o_8h}
\input{eos_i_o_8h_source}
\input{helm_8h}
\input{helm_8h_source}
\input{mesh_i_o_8cpp}
\input{mesh_i_o_8cpp_source}
\input{mesh_i_o_8h}
\input{mesh_i_o_8h_source}
\input{debug_8h}
\input{debug_8h_source}
\input{warning__control_8h}
\input{warning__control_8h_source}
\input{approx8_8cpp}
\input{approx8_8cpp_source}
\input{network_8cpp}
\input{network_8cpp_source}
\input{approx8_8h}
\input{approx8_8h_source}
\input{network_8h}
\input{network_8h_source}
\input{opac_8h}
\input{opatIO_8cpp}
\input{opatIO_8h}
\input{polyCoeff_8cpp}
\input{polyCoeff_8h}
\input{polyIO_8cpp}
\input{polyMFEMUtils_8cpp}
\input{polyIO_8h}
\input{polyMFEMUtils_8h}
\input{configTest_8cpp}
\input{constTest_8cpp}
\input{DObjectTest_8cpp}
\input{LockableDObjectTest_8cpp}
\input{MetadataTest_8cpp}
\input{testDObject_8cpp}
\input{meshIOTest_8cpp}
\input{opatIOTest_8cpp}
\input{build_2lib_2opatio_2____init_____8py}
\input{build_2lib_2opatio_2opat_2____init_____8py}
\input{src_2opatio_2____init_____8py}
\input{src_2opatio_2opat_2____init_____8py}
\input{build_2lib_2opatio_2opat_2opat_8py}
\input{src_2opatio_2opat_2opat_8py}
\input{readme_8md}
\input{mkTestData_8py}
\input{opac_8h_source}
\input{poly_coeff_8cpp}
\input{poly_coeff_8cpp_source}
\input{poly_coeff_8h}
\input{poly_coeff_8h_source}
\input{poly_solver_8cpp}
\input{poly_solver_8cpp_source}
\input{poly_solver_8h}
\input{poly_solver_8h_source}
\input{integrators_8cpp}
\input{integrators_8cpp_source}
\input{polytrope_operator_8cpp}
\input{polytrope_operator_8cpp_source}
\input{utilities_8cpp}
\input{utilities_8cpp_source}
\input{integrators_8h}
\input{integrators_8h_source}
\input{polytrope_operator_8h}
\input{polytrope_operator_8h_source}
\input{utilities_8h}
\input{utilities_8h_source}
\input{probe_8cpp}
\input{probe_8cpp_source}
\input{probe_8h}
\input{probe_8h_source}
\input{resource_manager_8cpp}
\input{resource_manager_8cpp_source}
\input{resource_manager_types_8cpp}
\input{resource_manager_types_8cpp_source}
\input{resource_manager_8h}
\input{resource_manager_8h_source}
\input{resource_manager_types_8h}
\input{resource_manager_types_8h_source}
\input{4_d_s_t_a_r_types_8h}
\input{4_d_s_t_a_r_types_8h_source}
\input{composition_test_8cpp}
\input{composition_test_8cpp_source}
\input{comp_8cpp}
\input{comp_8cpp_source}
\input{config_test_8cpp}
\input{config_test_8cpp_source}
\input{const_test_8cpp}
\input{const_test_8cpp_source}
\input{_d_object_test_8cpp}
\input{_d_object_test_8cpp_source}
\input{_lockable_d_object_test_8cpp}
\input{_lockable_d_object_test_8cpp_source}
\input{_metadata_test_8cpp}
\input{_metadata_test_8cpp_source}
\input{test_d_object_8cpp}
\input{test_d_object_8cpp_source}
\input{eos_test_8cpp}
\input{eos_test_8cpp_source}
\input{mesh_i_o_test_8cpp}
\input{mesh_i_o_test_8cpp_source}
\input{approx8_test_8cpp}
\input{approx8_test_8cpp_source}
\input{poly_test_8cpp}
\input{poly_test_8cpp_source}
\input{probe_test_8cpp}
\input{probe_test_8cpp_source}
\input{resource_manager_test_8cpp}
\input{resource_manager_test_8cpp_source}
\chapter{Examples}
\input{_2_users_2tboudreaux_2_programming_2_s_e_ri_f_2src_2composition_2public_2composition_8h-example}
\input{_constructing-example}
\input{_2_users_2tboudreaux_2_programming_2_s_e_ri_f_2src_2network_2public_2approx8_8h-example}
\input{_2_users_2tboudreaux_2_programming_2_s_e_ri_f_2src_2poly_2solver_2public_2poly_solver_8h-example}
%--- End generated contents ---
% Index
\backmatter
\newpage
\phantomsection
\clearemptydoublepage
\addcontentsline{toc}{chapter}{\indexname}
\printindex
\backmatter
\newpage
\phantomsection
\clearemptydoublepage
\addcontentsline{toc}{chapter}{\indexname}
\printindex
% Required for some languages (in combination with latexdocumentpre from the header)
\end{document}

File diff suppressed because it is too large Load Diff