<!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"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.17"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>GpgFrontend Project: GpgFrontend::SingletonFunctionObject< T > Class Template 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> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.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" /> </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 style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">GpgFrontend Project </div> <div id="projectbrief">A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.</div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.17 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ var searchBox = new SearchBox("searchBox", "search",false,'Search'); /* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(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:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(function(){initNavTree('classGpgFrontend_1_1SingletonFunctionObject.html',''); initResizable(); }); /* @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"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-static-methods">Static Public Member Functions</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="#pri-static-methods">Static Private Member Functions</a> | <a href="#pri-attribs">Private Attributes</a> | <a href="#pri-static-attribs">Static Private Attributes</a> | <a href="classGpgFrontend_1_1SingletonFunctionObject-members.html">List of all members</a> </div> <div class="headertitle"> <div class="title">GpgFrontend::SingletonFunctionObject< T > Class Template Reference</div> </div> </div><!--header--> <div class="contents"> <p><code>#include <<a class="el" href="GpgFunctionObject_8h_source.html">GpgFunctionObject.h</a>></code></p> <div class="dynheader"> Inheritance diagram for GpgFrontend::SingletonFunctionObject< T >:</div> <div class="dyncontent"> <div class="center"><img src="classGpgFrontend_1_1SingletonFunctionObject__inherit__graph.png" border="0" usemap="#GpgFrontend_1_1SingletonFunctionObject_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div> <map name="GpgFrontend_1_1SingletonFunctionObject_3_01T_01_4_inherit__map" id="GpgFrontend_1_1SingletonFunctionObject_3_01T_01_4_inherit__map"> <area shape="rect" title=" " alt="" coords="1400,5,1629,376"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="5,439,235,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="259,439,488,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="512,439,755,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="779,439,1021,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="1045,439,1275,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="1299,439,1528,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="1552,439,1781,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="1805,439,2035,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="2059,439,2288,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="2312,439,2541,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="2568,439,2800,809"/> <area shape="rect" href="classGpgFrontend_1_1SingletonFunctionObject.html" title=" " alt="" coords="2827,439,3056,809"/> <area shape="rect" href="classGpgFrontend_1_1GpgKeyManager.html" title=" " alt="" coords="10,1005,230,1127"/> <area shape="rect" href="classGpgFrontend_1_1GpgUIDOperator.html" title=" " alt="" coords="263,998,483,1134"/> <area shape="rect" href="classGpgFrontend_1_1GpgKeyImportExporter.html" title=" " alt="" coords="529,969,737,1163"/> <area shape="rect" href="classGpgFrontend_1_1GpgCommandExecutor.html" title="Extra commands related to GPG." alt="" coords="769,1020,1031,1112"/> <area shape="rect" href="classGpgFrontend_1_1GpgKeyOpera.html" title=" " alt="" coords="1059,969,1261,1163"/> <area shape="rect" href="classGpgFrontend_1_1GpgFileOpera.html" title=" " alt="" coords="1313,976,1514,1156"/> <area shape="rect" href="classGpgFrontend_1_1GpgKeyGetter.html" title=" " alt="" coords="1565,983,1769,1149"/> <area shape="rect" href="classGpgFrontend_1_1GpgBasicOperator.html" title="Basic operation collection." alt="" coords="1802,961,2033,1171"/> <area shape="rect" href="classGpgFrontend_1_1GlobalSettingStation.html" title=" " alt="" coords="2057,859,2281,1273"/> <area shape="rect" href="classGpgFrontend_1_1DataObjectOperator.html" title=" " alt="" coords="2305,954,2548,1178"/> <area shape="rect" href="classGpgFrontend_1_1PassphraseGenerator.html" title="The PassphraseGenerator class." alt="" coords="2572,1013,2823,1119"/> <area shape="rect" href="classGpgFrontend_1_1GpgContext.html" title=" " alt="" coords="2847,939,3038,1193"/> </map> </div> <div class="dynheader"> Collaboration diagram for GpgFrontend::SingletonFunctionObject< T >:</div> <div class="dyncontent"> <div class="center"><img src="classGpgFrontend_1_1SingletonFunctionObject__coll__graph.png" border="0" usemap="#GpgFrontend_1_1SingletonFunctionObject_3_01T_01_4_coll__map" alt="Collaboration graph"/></div> <map name="GpgFrontend_1_1SingletonFunctionObject_3_01T_01_4_coll__map" id="GpgFrontend_1_1SingletonFunctionObject_3_01T_01_4_coll__map"> <area shape="rect" title=" " alt="" coords="121,469,350,796"/> <area shape="rect" title="STL class." alt="" coords="5,315,148,392"/> <area shape="rect" title="STL class." alt="" coords="189,315,281,392"/> <area shape="rect" title=" " alt="" coords="311,300,463,407"/> <area shape="rect" title="STL class." alt="" coords="320,145,455,223"/> <area shape="rect" title=" " alt="" coords="331,5,369,83"/> <area shape="rect" title=" " alt="" coords="407,5,445,83"/> </map> </div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:aa99440b9177f5d0c18840f08a40d64b7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#aa99440b9177f5d0c18840f08a40d64b7">GetChannel</a> () const</td></tr> <tr class="memdesc:aa99440b9177f5d0c18840f08a40d64b7"><td class="mdescLeft"> </td><td class="mdescRight">Get the Channel object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#aa99440b9177f5d0c18840f08a40d64b7">More...</a><br /></td></tr> <tr class="separator:aa99440b9177f5d0c18840f08a40d64b7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aabc5fe8e5a372ac276a265286457cb9a"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#aabc5fe8e5a372ac276a265286457cb9a">SingletonFunctionObject</a> (T &&)=delete</td></tr> <tr class="memdesc:aabc5fe8e5a372ac276a265286457cb9a"><td class="mdescLeft"> </td><td class="mdescRight">Construct a new Singleton Function Object object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#aabc5fe8e5a372ac276a265286457cb9a">More...</a><br /></td></tr> <tr class="separator:aabc5fe8e5a372ac276a265286457cb9a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7090636bed6f4bad5b99f28f6872c645"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a7090636bed6f4bad5b99f28f6872c645">SingletonFunctionObject</a> (const T &)=delete</td></tr> <tr class="memdesc:a7090636bed6f4bad5b99f28f6872c645"><td class="mdescLeft"> </td><td class="mdescRight">Construct a new Singleton Function Object object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a7090636bed6f4bad5b99f28f6872c645">More...</a><br /></td></tr> <tr class="separator:a7090636bed6f4bad5b99f28f6872c645"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a03ce3095a745ecbf5e6a032e7da4bc97"><td class="memItemLeft" align="right" valign="top"><a id="a03ce3095a745ecbf5e6a032e7da4bc97"></a> void </td><td class="memItemRight" valign="bottom"><b>operator=</b> (const T &)=delete</td></tr> <tr class="separator:a03ce3095a745ecbf5e6a032e7da4bc97"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a> Static Public Member Functions</h2></td></tr> <tr class="memitem:a70484d7cfe9f9dcbcd5f8bb749250f36"><td class="memItemLeft" align="right" valign="top">static T & </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a70484d7cfe9f9dcbcd5f8bb749250f36">GetInstance</a> (int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)</td></tr> <tr class="memdesc:a70484d7cfe9f9dcbcd5f8bb749250f36"><td class="mdescLeft"> </td><td class="mdescRight">Get the Instance object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a70484d7cfe9f9dcbcd5f8bb749250f36">More...</a><br /></td></tr> <tr class="separator:a70484d7cfe9f9dcbcd5f8bb749250f36"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a43b21fa20b4102b826e3527f7bbdf218"><td class="memItemLeft" align="right" valign="top">static T & </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a43b21fa20b4102b826e3527f7bbdf218">CreateInstance</a> (int channel, std::function< std::unique_ptr< T >(void)> factory)</td></tr> <tr class="memdesc:a43b21fa20b4102b826e3527f7bbdf218"><td class="mdescLeft"> </td><td class="mdescRight">Create a Instance object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a43b21fa20b4102b826e3527f7bbdf218">More...</a><br /></td></tr> <tr class="separator:a43b21fa20b4102b826e3527f7bbdf218"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3d40217b6536ffafff8e58078d8e6b95"><td class="memItemLeft" align="right" valign="top">static T & </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a3d40217b6536ffafff8e58078d8e6b95">CreateInstance</a> (int channel, std::unique_ptr< T > p_obj=nullptr)</td></tr> <tr class="memdesc:a3d40217b6536ffafff8e58078d8e6b95"><td class="mdescLeft"> </td><td class="mdescRight">Create a Instance object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a3d40217b6536ffafff8e58078d8e6b95">More...</a><br /></td></tr> <tr class="separator:a3d40217b6536ffafff8e58078d8e6b95"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aadb8743cd8943395f5cbb631667da363"><td class="memItemLeft" align="right" valign="top">static T & </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#aadb8743cd8943395f5cbb631667da363">ReleaseChannel</a> (int channel)</td></tr> <tr class="separator:aadb8743cd8943395f5cbb631667da363"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a50e2b3794d6553f4231eaec72d9d0a50"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a50e2b3794d6553f4231eaec72d9d0a50">GetDefaultChannel</a> ()</td></tr> <tr class="memdesc:a50e2b3794d6553f4231eaec72d9d0a50"><td class="mdescLeft"> </td><td class="mdescRight">Get the Default Channel object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a50e2b3794d6553f4231eaec72d9d0a50">More...</a><br /></td></tr> <tr class="separator:a50e2b3794d6553f4231eaec72d9d0a50"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a> Protected Member Functions</h2></td></tr> <tr class="memitem:a02e76b42ab51d77588b01c7508bed258"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a02e76b42ab51d77588b01c7508bed258">SingletonFunctionObject</a> ()=default</td></tr> <tr class="memdesc:a02e76b42ab51d77588b01c7508bed258"><td class="mdescLeft"> </td><td class="mdescRight">Construct a new Singleton Function Object object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a02e76b42ab51d77588b01c7508bed258">More...</a><br /></td></tr> <tr class="separator:a02e76b42ab51d77588b01c7508bed258"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4aa7f1eb1d3281bb1fccfcbb1b416251"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a4aa7f1eb1d3281bb1fccfcbb1b416251">SingletonFunctionObject</a> (int channel)</td></tr> <tr class="memdesc:a4aa7f1eb1d3281bb1fccfcbb1b416251"><td class="mdescLeft"> </td><td class="mdescRight">Construct a new Singleton Function Object object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a4aa7f1eb1d3281bb1fccfcbb1b416251">More...</a><br /></td></tr> <tr class="separator:a4aa7f1eb1d3281bb1fccfcbb1b416251"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8296be8c449f88175285186831b995bc"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a8296be8c449f88175285186831b995bc">~SingletonFunctionObject</a> ()=default</td></tr> <tr class="memdesc:a8296be8c449f88175285186831b995bc"><td class="mdescLeft"> </td><td class="mdescRight">Destroy the Singleton Function Object object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a8296be8c449f88175285186831b995bc">More...</a><br /></td></tr> <tr class="separator:a8296be8c449f88175285186831b995bc"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a56ba12077251893e48f5ec360e8c7040"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a56ba12077251893e48f5ec360e8c7040">SetChannel</a> (int channel)</td></tr> <tr class="memdesc:a56ba12077251893e48f5ec360e8c7040"><td class="mdescLeft"> </td><td class="mdescRight">Set the Channel object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a56ba12077251893e48f5ec360e8c7040">More...</a><br /></td></tr> <tr class="separator:a56ba12077251893e48f5ec360e8c7040"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-methods"></a> Static Private Member Functions</h2></td></tr> <tr class="memitem:a6c6c54060c4f4926adb1ee4a71ee8c89"><td class="memItemLeft" align="right" valign="top">static T * </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a6c6c54060c4f4926adb1ee4a71ee8c89">find_object_in_channel</a> (int channel)</td></tr> <tr class="separator:a6c6c54060c4f4926adb1ee4a71ee8c89"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7377f8bddac073dbf9aa631726d8c021"><td class="memItemLeft" align="right" valign="top">static T * </td><td class="memItemRight" valign="bottom"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a7377f8bddac073dbf9aa631726d8c021">set_object_in_channel</a> (int channel, std::unique_ptr< T > p_obj)</td></tr> <tr class="memdesc:a7377f8bddac073dbf9aa631726d8c021"><td class="mdescLeft"> </td><td class="mdescRight">Set the object in channel object. <a href="classGpgFrontend_1_1SingletonFunctionObject.html#a7377f8bddac073dbf9aa631726d8c021">More...</a><br /></td></tr> <tr class="separator:a7377f8bddac073dbf9aa631726d8c021"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a> Private Attributes</h2></td></tr> <tr class="memitem:a03629fe438e2ab6b9e278bbe36e8ba72"><td class="memItemLeft" align="right" valign="top"><a id="a03629fe438e2ab6b9e278bbe36e8ba72"></a> int </td><td class="memItemRight" valign="bottom"><b>channel_</b> = _default_channel</td></tr> <tr class="separator:a03629fe438e2ab6b9e278bbe36e8ba72"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-attribs"></a> Static Private Attributes</h2></td></tr> <tr class="memitem:ae22a3ffbf6ef1adde906178a022c973c"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><b>_default_channel</b></td></tr> <tr class="separator:ae22a3ffbf6ef1adde906178a022c973c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6bf75b5dab3e8bb0f81a69df4fed4c39"><td class="memItemLeft" align="right" valign="top"><a id="a6bf75b5dab3e8bb0f81a69df4fed4c39"></a> static std::mutex </td><td class="memItemRight" valign="bottom"><b>_instance_mutex</b></td></tr> <tr class="separator:a6bf75b5dab3e8bb0f81a69df4fed4c39"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aecf86e20874606b7176bfe7063efc2e0"><td class="memItemLeft" align="right" valign="top"><a id="aecf86e20874606b7176bfe7063efc2e0"></a> static std::shared_mutex </td><td class="memItemRight" valign="bottom"><b>_instances_mutex</b></td></tr> <tr class="separator:aecf86e20874606b7176bfe7063efc2e0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac07ca33d2400724851c5e96dff4d54a4"><td class="memItemLeft" align="right" valign="top"><a id="ac07ca33d2400724851c5e96dff4d54a4"></a> static std::unique_ptr< T > </td><td class="memItemRight" valign="bottom"><b>_instance</b> = nullptr</td></tr> <tr class="separator:ac07ca33d2400724851c5e96dff4d54a4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a09a5ce042da5d1528bdef02932e17717"><td class="memItemLeft" align="right" valign="top"><a id="a09a5ce042da5d1528bdef02932e17717"></a> static std::map< int, std::unique_ptr< T > > </td><td class="memItemRight" valign="bottom"><b>_instances_map</b></td></tr> <tr class="separator:a09a5ce042da5d1528bdef02932e17717"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<typename T><br /> class GpgFrontend::SingletonFunctionObject< T ></h3> <dl class="tparams"><dt>Template Parameters</dt><dd> <table class="tparams"> <tr><td class="paramname">T</td><td></td></tr> </table> </dd> </dl> </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> <a id="aabc5fe8e5a372ac276a265286457cb9a"></a> <h2 class="memtitle"><span class="permalink"><a href="#aabc5fe8e5a372ac276a265286457cb9a">◆ </a></span>SingletonFunctionObject() <span class="overload">[1/4]</span></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"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::<a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">SingletonFunctionObject</a> </td> <td>(</td> <td class="paramtype">T && </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">delete</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Construct a new Singleton Function Object object. </p> </div> </div> <a id="a7090636bed6f4bad5b99f28f6872c645"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7090636bed6f4bad5b99f28f6872c645">◆ </a></span>SingletonFunctionObject() <span class="overload">[2/4]</span></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"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::<a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">SingletonFunctionObject</a> </td> <td>(</td> <td class="paramtype">const T & </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">delete</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Construct a new Singleton Function Object object. </p> </div> </div> <a id="a02e76b42ab51d77588b01c7508bed258"></a> <h2 class="memtitle"><span class="permalink"><a href="#a02e76b42ab51d77588b01c7508bed258">◆ </a></span>SingletonFunctionObject() <span class="overload">[3/4]</span></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"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::<a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">SingletonFunctionObject</a> </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">default</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Construct a new Singleton Function Object object. </p> </div> </div> <a id="a4aa7f1eb1d3281bb1fccfcbb1b416251"></a> <h2 class="memtitle"><span class="permalink"><a href="#a4aa7f1eb1d3281bb1fccfcbb1b416251">◆ </a></span>SingletonFunctionObject() <span class="overload">[4/4]</span></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"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::<a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">SingletonFunctionObject</a> </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>channel</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Construct a new Singleton Function Object object. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">channel</td><td></td></tr> </table> </dd> </dl> </div> </div> <a id="a8296be8c449f88175285186831b995bc"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8296be8c449f88175285186831b995bc">◆ </a></span>~SingletonFunctionObject()</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">virtual <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::~<a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">SingletonFunctionObject</a> </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">default</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Destroy the Singleton Function Object object. </p> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a id="a43b21fa20b4102b826e3527f7bbdf218"></a> <h2 class="memtitle"><span class="permalink"><a href="#a43b21fa20b4102b826e3527f7bbdf218">◆ </a></span>CreateInstance() <span class="overload">[1/2]</span></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">static T& <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::CreateInstance </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>channel</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">std::function< std::unique_ptr< T >(void)> </td> <td class="paramname"><em>factory</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Create a Instance object. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">channel</td><td></td></tr> <tr><td class="paramname">factory</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>T& </dd></dl> </div> </div> <a id="a3d40217b6536ffafff8e58078d8e6b95"></a> <h2 class="memtitle"><span class="permalink"><a href="#a3d40217b6536ffafff8e58078d8e6b95">◆ </a></span>CreateInstance() <span class="overload">[2/2]</span></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">static T& <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::CreateInstance </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>channel</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">std::unique_ptr< T > </td> <td class="paramname"><em>p_obj</em> = <code>nullptr</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Create a Instance object. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">channel</td><td></td></tr> <tr><td class="paramname">p_obj</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>T& </dd></dl> </div> </div> <a id="a6c6c54060c4f4926adb1ee4a71ee8c89"></a> <h2 class="memtitle"><span class="permalink"><a href="#a6c6c54060c4f4926adb1ee4a71ee8c89">◆ </a></span>find_object_in_channel()</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">static T* <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::find_object_in_channel </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>channel</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">channel</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>T* </dd></dl> <p class="reference">Referenced by <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a43b21fa20b4102b826e3527f7bbdf218">GpgFrontend::SingletonFunctionObject< GpgContext >::CreateInstance()</a>, and <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a70484d7cfe9f9dcbcd5f8bb749250f36">GpgFrontend::SingletonFunctionObject< GpgContext >::GetInstance()</a>.</p> </div> </div> <a id="aa99440b9177f5d0c18840f08a40d64b7"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa99440b9177f5d0c18840f08a40d64b7">◆ </a></span>GetChannel()</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">int <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::GetChannel </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Get the Channel object. </p> <dl class="section return"><dt>Returns</dt><dd>int </dd></dl> </div> </div> <a id="a50e2b3794d6553f4231eaec72d9d0a50"></a> <h2 class="memtitle"><span class="permalink"><a href="#a50e2b3794d6553f4231eaec72d9d0a50">◆ </a></span>GetDefaultChannel()</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">static int <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::GetDefaultChannel </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Get the Default Channel object. </p> <dl class="section return"><dt>Returns</dt><dd>int </dd></dl> </div> </div> <a id="a70484d7cfe9f9dcbcd5f8bb749250f36"></a> <h2 class="memtitle"><span class="permalink"><a href="#a70484d7cfe9f9dcbcd5f8bb749250f36">◆ </a></span>GetInstance()</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">static T& <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::GetInstance </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>channel</em> = <code>GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL</code></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Get the Instance object. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">channel</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>T& </dd></dl> </div> </div> <a id="aadb8743cd8943395f5cbb631667da363"></a> <h2 class="memtitle"><span class="permalink"><a href="#aadb8743cd8943395f5cbb631667da363">◆ </a></span>ReleaseChannel()</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">static T& <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::ReleaseChannel </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>channel</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">channel</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>T& </dd></dl> </div> </div> <a id="a7377f8bddac073dbf9aa631726d8c021"></a> <h2 class="memtitle"><span class="permalink"><a href="#a7377f8bddac073dbf9aa631726d8c021">◆ </a></span>set_object_in_channel()</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">static T* <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::set_object_in_channel </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>channel</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">std::unique_ptr< T > </td> <td class="paramname"><em>p_obj</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Set the object in channel object. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">channel</td><td></td></tr> <tr><td class="paramname">p_obj</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>T* </dd></dl> <p class="reference">Referenced by <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a43b21fa20b4102b826e3527f7bbdf218">GpgFrontend::SingletonFunctionObject< GpgContext >::CreateInstance()</a>, and <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html#a70484d7cfe9f9dcbcd5f8bb749250f36">GpgFrontend::SingletonFunctionObject< GpgContext >::GetInstance()</a>.</p> </div> </div> <a id="a56ba12077251893e48f5ec360e8c7040"></a> <h2 class="memtitle"><span class="permalink"><a href="#a56ba12077251893e48f5ec360e8c7040">◆ </a></span>SetChannel()</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">void <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::SetChannel </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"><em>channel</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Set the Channel object. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">channel</td><td></td></tr> </table> </dd> </dl> </div> </div> <h2 class="groupheader">Member Data Documentation</h2> <a id="ae22a3ffbf6ef1adde906178a022c973c"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae22a3ffbf6ef1adde906178a022c973c">◆ </a></span>_default_channel</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">int <a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">GpgFrontend::SingletonFunctionObject</a>< T >::_default_channel</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span><span class="mlabel">private</span></span> </td> </tr> </table> </div><div class="memdoc"> <b>Initial value:</b><div class="fragment"><div class="line">=</div> <div class="line"> GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL</div> </div><!-- fragment --> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>src/core/<a class="el" href="GpgFunctionObject_8h_source.html">GpgFunctionObject.h</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="namespaceGpgFrontend.html">GpgFrontend</a></li><li class="navelem"><a class="el" href="classGpgFrontend_1_1SingletonFunctionObject.html">SingletonFunctionObject</a></li> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li> </ul> </div> </body> </html>