<ahref="_d_object_8h.html">Go to the documentation of this file.</a><divclass="fragment"><divclass="line"><aid="l00001"name="l00001"></a><spanclass="lineno"> 1</span><spanclass="comment">/* ***********************************************************************</span></div>
<divclass="line"><aid="l00007"name="l00007"></a><spanclass="lineno"> 7</span><spanclass="comment">// 4DSSE is free software; you can use it and/or modify</span></div>
<divclass="line"><aid="l00008"name="l00008"></a><spanclass="lineno"> 8</span><spanclass="comment">// it under the terms and restrictions the GNU General Library Public</span></div>
<divclass="line"><aid="l00009"name="l00009"></a><spanclass="lineno"> 9</span><spanclass="comment">// License version 3 (GPLv3) as published by the Free Software Foundation.</span></div>
<divclass="line"><aid="l00011"name="l00011"></a><spanclass="lineno"> 11</span><spanclass="comment">// 4DSSE is distributed in the hope that it will be useful,</span></div>
<divclass="line"><aid="l00012"name="l00012"></a><spanclass="lineno"> 12</span><spanclass="comment">// but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<divclass="line"><aid="l00013"name="l00013"></a><spanclass="lineno"> 13</span><spanclass="comment">// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<divclass="line"><aid="l00014"name="l00014"></a><spanclass="lineno"> 14</span><spanclass="comment">// See the GNU Library General Public License for more details.</span></div>
<divclass="line"><aid="l00016"name="l00016"></a><spanclass="lineno"> 16</span><spanclass="comment">// You should have received a copy of the GNU Library General Public License</span></div>
<divclass="line"><aid="l00017"name="l00017"></a><spanclass="lineno"> 17</span><spanclass="comment">// along with this software; if not, write to the Free Software</span></div>
<divclass="line"><aid="l00018"name="l00018"></a><spanclass="lineno"> 18</span><spanclass="comment">// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA</span></div>
<divclass="line"><aid="l00108"name="l00108"></a><spanclass="lineno"> 108</span><spanclass="comment">// Mapping of data types to their string representations</span></div>
<divclass="ttc"id="aclass_d_object_html"><divclass="ttname"><ahref="class_d_object.html">DObject</a></div><divclass="ttdoc">A universal data container class.</div><divclass="ttdef"><b>Definition</b><ahref="#l00089">DObject.h:89</a></div></div>
<divclass="ttc"id="aclass_d_object_html_a1223275dcbbf20334ea11707346acb93"><divclass="ttname"><ahref="class_d_object.html#a1223275dcbbf20334ea11707346acb93">DObject::runAllPlugins</a></div><divclass="ttdeci">void runAllPlugins()</div><divclass="ttdoc">Executes all registered plugins in the registry.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00117">DObject.cpp:117</a></div></div>
<divclass="ttc"id="aclass_d_object_html_a15afffdf339150fc872bf63bdd08d581"><divclass="ttname"><ahref="class_d_object.html#a15afffdf339150fc872bf63bdd08d581">DObject::registerPlugin</a></div><divclass="ttdeci">void registerPlugin(const std::string &id, Plugin plugin)</div><divclass="ttdoc">Registers a plugin with the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00087">DObject.cpp:87</a></div></div>
<divclass="ttc"id="aclass_d_object_html_a4862655c3634d019b0a45b811d6f7235"><divclass="ttname"><ahref="class_d_object.html#a4862655c3634d019b0a45b811d6f7235">DObject::getData</a></div><divclass="ttdeci">const DataType & getData() const noexcept</div><divclass="ttdoc">Retrieves the data stored in the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00046">DObject.cpp:46</a></div></div>
<divclass="ttc"id="aclass_d_object_html_a55b7cdac36a3a518ba6e1ecef0e25dcd"><divclass="ttname"><ahref="class_d_object.html#a55b7cdac36a3a518ba6e1ecef0e25dcd">DObject::DataType</a></div><divclass="ttdeci">std::variant< bool, short int, int, long int, float, double, long double, std::string, std::monostate, std::vector< int >, std::vector< float >, std::vector< double >, std::vector< std::string >, std::vector< std::vector< int >>, std::vector< std::vector< float >>, std::vector< std::vector< double >>, std::vector< std::vector< std::vector< int >>>, std::vector< std::vector< std::vector< float >>>, std::vector< std::vector< std::vector< double >>>> DataType</div><divclass="ttdoc">Supported data types for the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="#l00097">DObject.h:97</a></div></div>
<divclass="ttc"id="aclass_d_object_html_a6f0023aee463e71d92442dcf61b6ed47"><divclass="ttname"><ahref="class_d_object.html#a6f0023aee463e71d92442dcf61b6ed47">DObject::setDebugging</a></div><divclass="ttdeci">void setDebugging(bool enableDebug)</div><divclass="ttdoc">Enables or disables debugging and tracing for the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00060">DObject.cpp:60</a></div></div>
<divclass="ttc"id="aclass_d_object_html_a99072eb52bb22745f0248f273fbf28fb"><divclass="ttname"><ahref="class_d_object.html#a99072eb52bb22745f0248f273fbf28fb">DObject::runPlugin</a></div><divclass="ttdeci">void runPlugin(const std::string &id)</div><divclass="ttdoc">Executes a plugin by its identifier.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00106">DObject.cpp:106</a></div></div>
<divclass="ttc"id="aclass_d_object_html_a99b8688849e11501033a25f61efb8356"><divclass="ttname"><ahref="class_d_object.html#a99b8688849e11501033a25f61efb8356">DObject::unregisterPlugin</a></div><divclass="ttdeci">void unregisterPlugin(const std::string &id)</div><divclass="ttdoc">Unregisters a plugin by its identifier.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00097">DObject.cpp:97</a></div></div>
<divclass="ttc"id="aclass_d_object_html_ab1718571434e84e90f1ec463e4786a8a"><divclass="ttname"><ahref="class_d_object.html#ab1718571434e84e90f1ec463e4786a8a">DObject::setData</a></div><divclass="ttdeci">void setData(const DataType &data)</div><divclass="ttdoc">Sets the data for the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00053">DObject.cpp:53</a></div></div>
<divclass="ttc"id="aclass_d_object_html_aca2db093c1c8c6f7893de07544aed619"><divclass="ttname"><ahref="class_d_object.html#aca2db093c1c8c6f7893de07544aed619">DObject::getDataAs</a></div><divclass="ttdeci">T getDataAs() const</div><divclass="ttdoc">Retrieves the data stored in the DObject as a typed object so that std::get<T>() is not needed.</div><divclass="ttdef"><b>Definition</b><ahref="#l00156">DObject.h:156</a></div></div>
<divclass="ttc"id="aclass_d_object_html_accf5c10d4afc3969607e11b0055312d5"><divclass="ttname"><ahref="class_d_object.html#accf5c10d4afc3969607e11b0055312d5">DObject::debugEnabled_</a></div><divclass="ttdeci">bool debugEnabled_</div><divclass="ttdoc">Indicates whether debugging is enabled.</div><divclass="ttdef"><b>Definition</b><ahref="#l00252">DObject.h:252</a></div></div>
<divclass="ttc"id="aclass_d_object_html_ad7ba02f6d87ce64792149096f3310b21"><divclass="ttname"><ahref="class_d_object.html#ad7ba02f6d87ce64792149096f3310b21">DObject::data_</a></div><divclass="ttdeci">DataType data_</div><divclass="ttdoc">The main data stored in the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="#l00251">DObject.h:251</a></div></div>
<divclass="ttc"id="aclass_d_object_html_ad8de5890e8dae5fc7e72fabca2520fc3"><divclass="ttname"><ahref="class_d_object.html#ad8de5890e8dae5fc7e72fabca2520fc3">DObject::errorCode_</a></div><divclass="ttdeci">int errorCode_</div><divclass="ttdoc">Error code tracked by the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="#l00253">DObject.h:253</a></div></div>
<divclass="ttc"id="aclass_d_object_html_ae47bf220fbe2173cf6933c2380035dbd"><divclass="ttname"><ahref="class_d_object.html#ae47bf220fbe2173cf6933c2380035dbd">DObject::isDebuggingEnabled</a></div><divclass="ttdeci">bool isDebuggingEnabled() const noexcept</div><divclass="ttdoc">Checks if debugging is enabled for the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00067">DObject.cpp:67</a></div></div>
<divclass="ttc"id="aclass_d_object_html_ae9f7e4d2fbabc076961a40185676e208"><divclass="ttname"><ahref="class_d_object.html#ae9f7e4d2fbabc076961a40185676e208">DObject::plugins_</a></div><divclass="ttdeci">std::map< std::string, Plugin > plugins_</div><divclass="ttdoc">Registry for dynamically registered plugins.</div><divclass="ttdef"><b>Definition</b><ahref="#l00254">DObject.h:254</a></div></div>
<divclass="ttc"id="aclass_d_object_html_af11334d08ef85c68b3aae7554548e5a7"><divclass="ttname"><ahref="class_d_object.html#af11334d08ef85c68b3aae7554548e5a7">DObject::Plugin</a></div><divclass="ttdeci">std::function< void(DObject &)> Plugin</div><divclass="ttdoc">Placeholder type for plugins.</div><divclass="ttdef"><b>Definition</b><ahref="#l00125">DObject.h:125</a></div></div>
<divclass="ttc"id="aclass_d_object_html_afa8926d916081de72478cb8813c25e98"><divclass="ttname"><ahref="class_d_object.html#afa8926d916081de72478cb8813c25e98">DObject::getErrorCode</a></div><divclass="ttdeci">int getErrorCode() const noexcept</div><divclass="ttdoc">Get the error code tracked by the DObject.</div><divclass="ttdef"><b>Definition</b><ahref="_d_object_8cpp_source.html#l00080">DObject.cpp:80</a></div></div>
<liclass="footer">Generated by <ahref="https://www.doxygen.org/index.html"><imgclass="footer"src="doxygen.svg"width="104"height="31"alt="doxygen"/></a> 1.13.2 </li>