838 lines
49 KiB
HTML
838 lines
49 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>SERiF: DObject Class Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<script type="text/javascript" src="clipboard.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="cookie.js"></script>
|
|
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
<script type="text/javascript" src="search/search.js"></script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
|
|
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr id="projectrow">
|
|
<td id="projectalign">
|
|
<div id="projectname">SERiF<span id="projectnumber"> 0.0.1a</span>
|
|
</div>
|
|
<div id="projectbrief">3+1D Stellar Structure and Evolution</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.13.2 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() { codefold.init(0); });
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search',true);
|
|
$(function() { init_search(); });
|
|
});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function(){initNavTree('class_d_object.html',''); initResizable(true); });
|
|
/* @license-end */
|
|
</script>
|
|
<div id="doc-content">
|
|
<!-- window showing the filter options -->
|
|
<div id="MSearchSelectWindow"
|
|
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
</div>
|
|
|
|
<!-- iframe showing the search results (closed by default) -->
|
|
<div id="MSearchResultsWindow">
|
|
<div id="MSearchResults">
|
|
<div class="SRPage">
|
|
<div id="SRIndex">
|
|
<div id="SRResults"></div>
|
|
<div class="SRStatus" id="Loading">Loading...</div>
|
|
<div class="SRStatus" id="Searching">Searching...</div>
|
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#pub-types">Public Types</a> |
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pub-attribs">Public Attributes</a> |
|
|
<a href="#pri-attribs">Private Attributes</a> |
|
|
<a href="#friends">Friends</a> |
|
|
<a href="class_d_object-members.html">List of all members</a> </div>
|
|
<div class="headertitle"><div class="title">DObject Class Reference</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>A universal data container class.
|
|
<a href="#details">More...</a></p>
|
|
|
|
<p><code>#include <<a class="el" href="_d_object_8h_source.html">DObject.h</a>></code></p>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
|
|
Public Types</h2></td></tr>
|
|
<tr class="memitem:a55b7cdac36a3a518ba6e1ecef0e25dcd" id="r_a55b7cdac36a3a518ba6e1ecef0e25dcd"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DataType</a></td></tr>
|
|
<tr class="memdesc:a55b7cdac36a3a518ba6e1ecef0e25dcd"><td class="mdescLeft"> </td><td class="mdescRight">Supported data types for the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:a55b7cdac36a3a518ba6e1ecef0e25dcd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af11334d08ef85c68b3aae7554548e5a7" id="r_af11334d08ef85c68b3aae7554548e5a7"><td class="memItemLeft" align="right" valign="top">using </td><td class="memItemRight" valign="bottom"><a class="el" href="#af11334d08ef85c68b3aae7554548e5a7">Plugin</a> = std::function<void(<a class="el" href="class_d_object.html">DObject</a>&)></td></tr>
|
|
<tr class="memdesc:af11334d08ef85c68b3aae7554548e5a7"><td class="mdescLeft"> </td><td class="mdescRight">Placeholder type for plugins. <br /></td></tr>
|
|
<tr class="separator:af11334d08ef85c68b3aae7554548e5a7"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a0ae54853e18265657296bfb5ac3bf9d0" id="r_a0ae54853e18265657296bfb5ac3bf9d0"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0ae54853e18265657296bfb5ac3bf9d0">DObject</a> ()</td></tr>
|
|
<tr class="memdesc:a0ae54853e18265657296bfb5ac3bf9d0"><td class="mdescLeft"> </td><td class="mdescRight">Default constructor. <br /></td></tr>
|
|
<tr class="separator:a0ae54853e18265657296bfb5ac3bf9d0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a598321f3b8524b98df72393c04d7470c" id="r_a598321f3b8524b98df72393c04d7470c"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a598321f3b8524b98df72393c04d7470c">DObject</a> (const <a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DataType</a> &data)</td></tr>
|
|
<tr class="memdesc:a598321f3b8524b98df72393c04d7470c"><td class="mdescLeft"> </td><td class="mdescRight">Constructor to initialize a <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a> with data. <br /></td></tr>
|
|
<tr class="separator:a598321f3b8524b98df72393c04d7470c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4862655c3634d019b0a45b811d6f7235" id="r_a4862655c3634d019b0a45b811d6f7235"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DataType</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="#a4862655c3634d019b0a45b811d6f7235">getData</a> () const noexcept</td></tr>
|
|
<tr class="memdesc:a4862655c3634d019b0a45b811d6f7235"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the data stored in the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:a4862655c3634d019b0a45b811d6f7235"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aca2db093c1c8c6f7893de07544aed619" id="r_aca2db093c1c8c6f7893de07544aed619"><td class="memTemplParams" colspan="2">template<typename T> </td></tr>
|
|
<tr class="memitem:aca2db093c1c8c6f7893de07544aed619"><td class="memTemplItemLeft" align="right" valign="top">T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="#aca2db093c1c8c6f7893de07544aed619">getDataAs</a> () const</td></tr>
|
|
<tr class="memdesc:aca2db093c1c8c6f7893de07544aed619"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves the data stored in the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a> as a typed object so that std::get<T>() is not needed. <br /></td></tr>
|
|
<tr class="separator:aca2db093c1c8c6f7893de07544aed619"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab1718571434e84e90f1ec463e4786a8a" id="r_ab1718571434e84e90f1ec463e4786a8a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#ab1718571434e84e90f1ec463e4786a8a">setData</a> (const <a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DataType</a> &data)</td></tr>
|
|
<tr class="memdesc:ab1718571434e84e90f1ec463e4786a8a"><td class="mdescLeft"> </td><td class="mdescRight">Sets the data for the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:ab1718571434e84e90f1ec463e4786a8a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6f0023aee463e71d92442dcf61b6ed47" id="r_a6f0023aee463e71d92442dcf61b6ed47"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a6f0023aee463e71d92442dcf61b6ed47">setDebugging</a> (bool enableDebug)</td></tr>
|
|
<tr class="memdesc:a6f0023aee463e71d92442dcf61b6ed47"><td class="mdescLeft"> </td><td class="mdescRight">Enables or disables debugging and tracing for the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:a6f0023aee463e71d92442dcf61b6ed47"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae47bf220fbe2173cf6933c2380035dbd" id="r_ae47bf220fbe2173cf6933c2380035dbd"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae47bf220fbe2173cf6933c2380035dbd">isDebuggingEnabled</a> () const noexcept</td></tr>
|
|
<tr class="memdesc:ae47bf220fbe2173cf6933c2380035dbd"><td class="mdescLeft"> </td><td class="mdescRight">Checks if debugging is enabled for the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:ae47bf220fbe2173cf6933c2380035dbd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3dce47a519f9da5085c0c5ac1eea4f38" id="r_a3dce47a519f9da5085c0c5ac1eea4f38"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#a3dce47a519f9da5085c0c5ac1eea4f38">setErrorCode</a> (int code) noexcept</td></tr>
|
|
<tr class="separator:a3dce47a519f9da5085c0c5ac1eea4f38"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afa8926d916081de72478cb8813c25e98" id="r_afa8926d916081de72478cb8813c25e98"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#afa8926d916081de72478cb8813c25e98">getErrorCode</a> () const noexcept</td></tr>
|
|
<tr class="memdesc:afa8926d916081de72478cb8813c25e98"><td class="mdescLeft"> </td><td class="mdescRight">Get the error code tracked by the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:afa8926d916081de72478cb8813c25e98"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a15afffdf339150fc872bf63bdd08d581" id="r_a15afffdf339150fc872bf63bdd08d581"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a15afffdf339150fc872bf63bdd08d581">registerPlugin</a> (const std::string &id, <a class="el" href="#af11334d08ef85c68b3aae7554548e5a7">Plugin</a> plugin)</td></tr>
|
|
<tr class="memdesc:a15afffdf339150fc872bf63bdd08d581"><td class="mdescLeft"> </td><td class="mdescRight">Registers a plugin with the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:a15afffdf339150fc872bf63bdd08d581"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a99b8688849e11501033a25f61efb8356" id="r_a99b8688849e11501033a25f61efb8356"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a99b8688849e11501033a25f61efb8356">unregisterPlugin</a> (const std::string &id)</td></tr>
|
|
<tr class="memdesc:a99b8688849e11501033a25f61efb8356"><td class="mdescLeft"> </td><td class="mdescRight">Unregisters a plugin by its identifier. <br /></td></tr>
|
|
<tr class="separator:a99b8688849e11501033a25f61efb8356"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a99072eb52bb22745f0248f273fbf28fb" id="r_a99072eb52bb22745f0248f273fbf28fb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a99072eb52bb22745f0248f273fbf28fb">runPlugin</a> (const std::string &id)</td></tr>
|
|
<tr class="memdesc:a99072eb52bb22745f0248f273fbf28fb"><td class="mdescLeft"> </td><td class="mdescRight">Executes a plugin by its identifier. <br /></td></tr>
|
|
<tr class="separator:a99072eb52bb22745f0248f273fbf28fb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1223275dcbbf20334ea11707346acb93" id="r_a1223275dcbbf20334ea11707346acb93"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a1223275dcbbf20334ea11707346acb93">runAllPlugins</a> ()</td></tr>
|
|
<tr class="memdesc:a1223275dcbbf20334ea11707346acb93"><td class="mdescLeft"> </td><td class="mdescRight">Executes all registered plugins in the registry. <br /></td></tr>
|
|
<tr class="separator:a1223275dcbbf20334ea11707346acb93"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
|
|
Public Attributes</h2></td></tr>
|
|
<tr class="memitem:a358d5f015da09ae5f0cbb46f3fd9e401" id="r_a358d5f015da09ae5f0cbb46f3fd9e401"><td class="memItemLeft" align="right" valign="top">std::map< int, std::string > </td><td class="memItemRight" valign="bottom"><a class="el" href="#a358d5f015da09ae5f0cbb46f3fd9e401">dataTypeMap</a></td></tr>
|
|
<tr class="separator:a358d5f015da09ae5f0cbb46f3fd9e401"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
|
|
Private Attributes</h2></td></tr>
|
|
<tr class="memitem:ad7ba02f6d87ce64792149096f3310b21" id="r_ad7ba02f6d87ce64792149096f3310b21"><td class="memItemLeft" align="right" valign="top"><a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DataType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad7ba02f6d87ce64792149096f3310b21">data_</a></td></tr>
|
|
<tr class="memdesc:ad7ba02f6d87ce64792149096f3310b21"><td class="mdescLeft"> </td><td class="mdescRight">The main data stored in the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:ad7ba02f6d87ce64792149096f3310b21"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:accf5c10d4afc3969607e11b0055312d5" id="r_accf5c10d4afc3969607e11b0055312d5"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#accf5c10d4afc3969607e11b0055312d5">debugEnabled_</a> = false</td></tr>
|
|
<tr class="memdesc:accf5c10d4afc3969607e11b0055312d5"><td class="mdescLeft"> </td><td class="mdescRight">Indicates whether debugging is enabled. <br /></td></tr>
|
|
<tr class="separator:accf5c10d4afc3969607e11b0055312d5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad8de5890e8dae5fc7e72fabca2520fc3" id="r_ad8de5890e8dae5fc7e72fabca2520fc3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#ad8de5890e8dae5fc7e72fabca2520fc3">errorCode_</a> = 0</td></tr>
|
|
<tr class="memdesc:ad8de5890e8dae5fc7e72fabca2520fc3"><td class="mdescLeft"> </td><td class="mdescRight">Error code tracked by the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:ad8de5890e8dae5fc7e72fabca2520fc3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae9f7e4d2fbabc076961a40185676e208" id="r_ae9f7e4d2fbabc076961a40185676e208"><td class="memItemLeft" align="right" valign="top">std::map< std::string, <a class="el" href="#af11334d08ef85c68b3aae7554548e5a7">Plugin</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="#ae9f7e4d2fbabc076961a40185676e208">plugins_</a></td></tr>
|
|
<tr class="memdesc:ae9f7e4d2fbabc076961a40185676e208"><td class="mdescLeft"> </td><td class="mdescRight">Registry for dynamically registered plugins. <br /></td></tr>
|
|
<tr class="separator:ae9f7e4d2fbabc076961a40185676e208"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
|
|
Friends</h2></td></tr>
|
|
<tr class="memitem:aa54e75574f0302a2ca7252f9f0f0b3f1" id="r_aa54e75574f0302a2ca7252f9f0f0b3f1"><td class="memItemLeft" align="right" valign="top">std::ostream & </td><td class="memItemRight" valign="bottom"><a class="el" href="#aa54e75574f0302a2ca7252f9f0f0b3f1">operator<<</a> (std::ostream &os, const <a class="el" href="class_d_object.html">DObject</a> &obj)</td></tr>
|
|
<tr class="memdesc:aa54e75574f0302a2ca7252f9f0f0b3f1"><td class="mdescLeft"> </td><td class="mdescRight">Provides a human-readable summary of the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. <br /></td></tr>
|
|
<tr class="separator:aa54e75574f0302a2ca7252f9f0f0b3f1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>A universal data container class. </p>
|
|
<p>The <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a> class is designed to store arbitrary data alongside descriptive metadata. It supports plugin registration to allow extensible functionality.</p>
|
|
<p>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 (<a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>). There are still a limited number of types that DOBject can represent these include</p><ul>
|
|
<li>bool</li>
|
|
<li>short int</li>
|
|
<li>int</li>
|
|
<li>long int</li>
|
|
<li>float</li>
|
|
<li>double</li>
|
|
<li>long double</li>
|
|
<li>std::string</li>
|
|
<li>std::monostate</li>
|
|
<li>std::vector<int></li>
|
|
<li>std::vector<float></li>
|
|
<li>std::vector<double></li>
|
|
<li>std::vector<std::string></li>
|
|
<li>std::vector<std::vector<int>></li>
|
|
<li>std::vector<std::vector<float>></li>
|
|
<li>std::vector<std::vector<double>></li>
|
|
<li>std::vector<std::vector<std::vector<int>>></li>
|
|
<li>std::vector<std::vector<std::vector<float>>></li>
|
|
<li>std::vector<std::vector<std::vector<double>></li>
|
|
</ul>
|
|
<p>If more types are needed, they can be added to the <a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd" title="Supported data types for the DObject.">DataType</a> variant.</p>
|
|
<p>In general the usage of this might look like </p><div class="fragment"><div class="line"><a class="code hl_function" href="#a0ae54853e18265657296bfb5ac3bf9d0">DObject</a> obj;</div>
|
|
<div class="line">std::vector<int> data = {1, 2, 3, 4, 5};</div>
|
|
<div class="line">obj.<a class="code hl_function" href="#ab1718571434e84e90f1ec463e4786a8a">setData</a>(data);</div>
|
|
<div class="line">std::cout << <span class="stringliteral">"Data is "</span> << obj << std::end;</div>
|
|
<div class="line">someFunction(&obj);</div>
|
|
<div class="ttc" id="aclass_d_object_html_a0ae54853e18265657296bfb5ac3bf9d0"><div class="ttname"><a href="#a0ae54853e18265657296bfb5ac3bf9d0">DObject::DObject</a></div><div class="ttdeci">DObject()</div><div class="ttdoc">Default constructor.</div><div class="ttdef"><b>Definition</b> <a href="_d_object_8cpp_source.html#l00033">DObject.cpp:33</a></div></div>
|
|
<div class="ttc" id="aclass_d_object_html_ab1718571434e84e90f1ec463e4786a8a"><div class="ttname"><a href="#ab1718571434e84e90f1ec463e4786a8a">DObject::setData</a></div><div class="ttdeci">void setData(const DataType &data)</div><div class="ttdoc">Sets the data for the DObject.</div><div class="ttdef"><b>Definition</b> <a href="_d_object_8cpp_source.html#l00053">DObject.cpp:53</a></div></div>
|
|
</div><!-- fragment --><p>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). </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00089">89</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
</div><h2 class="groupheader">Member Typedef Documentation</h2>
|
|
<a id="a55b7cdac36a3a518ba6e1ecef0e25dcd" name="a55b7cdac36a3a518ba6e1ecef0e25dcd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">◆ </a></span>DataType</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">using <a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DObject::DataType</a></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<b>Initial value:</b><div class="fragment"><div class="line"> std::variant<</div>
|
|
<div class="line"> bool, <span class="keywordtype">short</span> int, int, <span class="keywordtype">long</span> int, float, double, </div>
|
|
<div class="line"> <span class="keywordtype">long</span> double, std::string, std::monostate, std::vector<int>,</div>
|
|
<div class="line"> std::vector<float>, std::vector<double>, std::vector<std::string>,</div>
|
|
<div class="line"> std::vector<std::vector<int>>, std::vector<std::vector<float>>,</div>
|
|
<div class="line"> std::vector<std::vector<double>>,</div>
|
|
<div class="line"> std::vector<std::vector<std::vector<int>>>,</div>
|
|
<div class="line"> std::vector<std::vector<std::vector<float>>>,</div>
|
|
<div class="line"> std::vector<std::vector<std::vector<double>>></div>
|
|
<div class="line"> ></div>
|
|
</div><!-- fragment -->
|
|
<p>Supported data types for the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
<p>This type alias uses <code>std::variant</code> to store different types of data, ensuring type safety and flexibility. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00097">97</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af11334d08ef85c68b3aae7554548e5a7" name="af11334d08ef85c68b3aae7554548e5a7"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af11334d08ef85c68b3aae7554548e5a7">◆ </a></span>Plugin</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">using <a class="el" href="#af11334d08ef85c68b3aae7554548e5a7">DObject::Plugin</a> = std::function<void(<a class="el" href="class_d_object.html">DObject</a>&)></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Placeholder type for plugins. </p>
|
|
<p>In the future, this will be replaced with a concrete interface. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00125">125</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="a0ae54853e18265657296bfb5ac3bf9d0" name="a0ae54853e18265657296bfb5ac3bf9d0"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0ae54853e18265657296bfb5ac3bf9d0">◆ </a></span>DObject() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">DObject::DObject </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Default constructor. </p>
|
|
<p>Creates an empty <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00033">33</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a598321f3b8524b98df72393c04d7470c" name="a598321f3b8524b98df72393c04d7470c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a598321f3b8524b98df72393c04d7470c">◆ </a></span>DObject() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">DObject::DObject </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DataType</a> &</td> <td class="paramname"><span class="paramname"><em>data</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Constructor to initialize a <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a> with data. </p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">data</td><td>The data to be stored in the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00040">40</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="a4862655c3634d019b0a45b811d6f7235" name="a4862655c3634d019b0a45b811d6f7235"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4862655c3634d019b0a45b811d6f7235">◆ </a></span>getData()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DObject::DataType</a> & DObject::getData </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel noexcept">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Retrieves the data stored in the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
<p>Use the appropriate type (matching the stored data) with <code>std::get<T>()</code>.</p>
|
|
<dl class="section return"><dt>Returns</dt><dd>A constant reference to the stored data. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00046">46</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aca2db093c1c8c6f7893de07544aed619" name="aca2db093c1c8c6f7893de07544aed619"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aca2db093c1c8c6f7893de07544aed619">◆ </a></span>getDataAs()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">T DObject::getDataAs </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel inline">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Retrieves the data stored in the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a> as a typed object so that std::get<T>() is not needed. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>Data as type T </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00156">156</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="afa8926d916081de72478cb8813c25e98" name="afa8926d916081de72478cb8813c25e98"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#afa8926d916081de72478cb8813c25e98">◆ </a></span>getErrorCode()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int DObject::getErrorCode </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel noexcept">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Get the error code tracked by the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>The error code </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00080">80</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae47bf220fbe2173cf6933c2380035dbd" name="ae47bf220fbe2173cf6933c2380035dbd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae47bf220fbe2173cf6933c2380035dbd">◆ </a></span>isDebuggingEnabled()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool DObject::isDebuggingEnabled </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel noexcept">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Checks if debugging is enabled for the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
<dl class="section return"><dt>Returns</dt><dd>True if debugging is enabled, false otherwise. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00067">67</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a15afffdf339150fc872bf63bdd08d581" name="a15afffdf339150fc872bf63bdd08d581"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a15afffdf339150fc872bf63bdd08d581">◆ </a></span>registerPlugin()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void DObject::registerPlugin </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const std::string &</td> <td class="paramname"><span class="paramname"><em>id</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="#af11334d08ef85c68b3aae7554548e5a7">Plugin</a></td> <td class="paramname"><span class="paramname"><em>plugin</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Registers a plugin with the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
<p>Plugins are stored in a registry and can add custom functionality to the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">id</td><td>A unique identifier for the plugin. </td></tr>
|
|
<tr><td class="paramname">plugin</td><td>The plugin function to register. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00087">87</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1223275dcbbf20334ea11707346acb93" name="a1223275dcbbf20334ea11707346acb93"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1223275dcbbf20334ea11707346acb93">◆ </a></span>runAllPlugins()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void DObject::runAllPlugins </td>
|
|
<td>(</td>
|
|
<td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Executes all registered plugins in the registry. </p>
|
|
<p>Iterates through all plugins and invokes them on the current <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00117">117</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a99072eb52bb22745f0248f273fbf28fb" name="a99072eb52bb22745f0248f273fbf28fb"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a99072eb52bb22745f0248f273fbf28fb">◆ </a></span>runPlugin()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void DObject::runPlugin </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const std::string &</td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Executes a plugin by its identifier. </p>
|
|
<p>Invokes the registered plugin function. If the plugin is not found, no action is taken.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">id</td><td>The unique identifier of the plugin to execute. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00106">106</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab1718571434e84e90f1ec463e4786a8a" name="ab1718571434e84e90f1ec463e4786a8a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab1718571434e84e90f1ec463e4786a8a">◆ </a></span>setData()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void DObject::setData </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const <a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DataType</a> &</td> <td class="paramname"><span class="paramname"><em>data</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets the data for the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
<p>Updates the stored data and optionally updates metadata.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">data</td><td>The new data to store in the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00053">53</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6f0023aee463e71d92442dcf61b6ed47" name="a6f0023aee463e71d92442dcf61b6ed47"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6f0023aee463e71d92442dcf61b6ed47">◆ </a></span>setDebugging()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void DObject::setDebugging </td>
|
|
<td>(</td>
|
|
<td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>enableDebug</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Enables or disables debugging and tracing for the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
<p>When debugging is enabled, the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a> tracks creation and modification history.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">enableDebug</td><td>True to enable debugging, false to disable it. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00060">60</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3dce47a519f9da5085c0c5ac1eea4f38" name="a3dce47a519f9da5085c0c5ac1eea4f38"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3dce47a519f9da5085c0c5ac1eea4f38">◆ </a></span>setErrorCode()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int DObject::setErrorCode </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>code</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel noexcept">noexcept</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>@breif Set error code tracked by the DOBject</p>
|
|
<dl class="section return"><dt>Returns</dt><dd>The previous error code</dd></dl>
|
|
<p>@breif Sets an error code and returns the old one </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00074">74</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a99b8688849e11501033a25f61efb8356" name="a99b8688849e11501033a25f61efb8356"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a99b8688849e11501033a25f61efb8356">◆ </a></span>unregisterPlugin()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void DObject::unregisterPlugin </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const std::string &</td> <td class="paramname"><span class="paramname"><em>id</em></span></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Unregisters a plugin by its identifier. </p>
|
|
<p>Removes the plugin from the registry if it exists.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">id</td><td>The unique identifier of the plugin to unregister. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00097">97</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Friends And Related Symbol Documentation</h2>
|
|
<a id="aa54e75574f0302a2ca7252f9f0f0b3f1" name="aa54e75574f0302a2ca7252f9f0f0b3f1"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa54e75574f0302a2ca7252f9f0f0b3f1">◆ </a></span>operator<<</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::ostream & operator<< </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::ostream &</td> <td class="paramname"><span class="paramname"><em>os</em></span>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const <a class="el" href="class_d_object.html">DObject</a> &</td> <td class="paramname"><span class="paramname"><em>obj</em></span> )</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel friend">friend</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Provides a human-readable summary of the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
<p>Useful for quick inspection or logging during debugging sessions.</p>
|
|
<dl class="params"><dt>Parameters</dt><dd>
|
|
<table class="params">
|
|
<tr><td class="paramname">os</td><td>The output stream to write to. </td></tr>
|
|
<tr><td class="paramname">obj</td><td>The <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a> to summarize. </td></tr>
|
|
</table>
|
|
</dd>
|
|
</dl>
|
|
<dl class="section return"><dt>Returns</dt><dd>A reference to the output stream. </dd></dl>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8cpp_source.html#l00126">126</a> of file <a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Data Documentation</h2>
|
|
<a id="ad7ba02f6d87ce64792149096f3310b21" name="ad7ba02f6d87ce64792149096f3310b21"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad7ba02f6d87ce64792149096f3310b21">◆ </a></span>data_</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="#a55b7cdac36a3a518ba6e1ecef0e25dcd">DataType</a> DObject::data_</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>The main data stored in the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00251">251</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a358d5f015da09ae5f0cbb46f3fd9e401" name="a358d5f015da09ae5f0cbb46f3fd9e401"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a358d5f015da09ae5f0cbb46f3fd9e401">◆ </a></span>dataTypeMap</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::map<int, std::string> DObject::dataTypeMap</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
|
|
<div class="line"> {0, <span class="stringliteral">"bool"</span>}, {1, <span class="stringliteral">"short int"</span>}, {2, <span class="stringliteral">"int"</span>}, {3, <span class="stringliteral">"long int"</span>}, {4, <span class="stringliteral">"float"</span>},</div>
|
|
<div class="line"> {5, <span class="stringliteral">"double"</span>}, {6, <span class="stringliteral">"long double"</span>}, {7, <span class="stringliteral">"string"</span>}, {8, <span class="stringliteral">"std::monostate"</span>},</div>
|
|
<div class="line"> {9, <span class="stringliteral">"vector<int>"</span>}, {10, <span class="stringliteral">"vector<float>"</span>}, {11, <span class="stringliteral">"vector<double>"</span>},</div>
|
|
<div class="line"> {12, <span class="stringliteral">"vector<string>"</span>}, {13, <span class="stringliteral">"vector<vector<int>"</span>},</div>
|
|
<div class="line"> {14, <span class="stringliteral">"vector<vector<float>"</span>}, {15, <span class="stringliteral">"vector<vector<double>"</span>},</div>
|
|
<div class="line"> {16, <span class="stringliteral">"vector<vector<vector<int>>"</span>}, {17, <span class="stringliteral">"vector<vector<vector<float>>"</span>},</div>
|
|
<div class="line"> {18, <span class="stringliteral">"vector<vector<vector<double>>"</span>}</div>
|
|
<div class="line"> }</div>
|
|
</div><!-- fragment -->
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00109">109</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="accf5c10d4afc3969607e11b0055312d5" name="accf5c10d4afc3969607e11b0055312d5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#accf5c10d4afc3969607e11b0055312d5">◆ </a></span>debugEnabled_</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool DObject::debugEnabled_ = false</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Indicates whether debugging is enabled. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00252">252</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad8de5890e8dae5fc7e72fabca2520fc3" name="ad8de5890e8dae5fc7e72fabca2520fc3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad8de5890e8dae5fc7e72fabca2520fc3">◆ </a></span>errorCode_</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int DObject::errorCode_ = 0</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Error code tracked by the <a class="el" href="class_d_object.html" title="A universal data container class.">DObject</a>. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00253">253</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae9f7e4d2fbabc076961a40185676e208" name="ae9f7e4d2fbabc076961a40185676e208"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae9f7e4d2fbabc076961a40185676e208">◆ </a></span>plugins_</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">std::map<std::string, <a class="el" href="#af11334d08ef85c68b3aae7554548e5a7">Plugin</a>> DObject::plugins_</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel private">private</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Registry for dynamically registered plugins. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="_d_object_8h_source.html#l00254">254</a> of file <a class="el" href="_d_object_8h_source.html">DObject.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following files:<ul>
|
|
<li>src/dobj/public/<a class="el" href="_d_object_8h_source.html">DObject.h</a></li>
|
|
<li>src/dobj/private/<a class="el" href="_d_object_8cpp_source.html">DObject.cpp</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="class_d_object.html">DObject</a></li>
|
|
<li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|