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

@@ -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