\hypertarget{namespaceGpgFrontend_1_1Module}{}\doxysection{Gpg\+Frontend\+::Module Namespace Reference} \label{namespaceGpgFrontend_1_1Module}\index{GpgFrontend::Module@{GpgFrontend::Module}} \doxysubsection*{Classes} \begin{DoxyCompactItemize} \item class \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1Event}{Event}} \item class \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1GlobalModuleContext}{Global\+Module\+Context}} \item class \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1GlobalRegisterTable}{Global\+Register\+Table}} \item class \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1GlobalRegisterTableTreeModel}{Global\+Register\+Table\+Tree\+Model}} \item class \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1Module}{Module}} \item struct \mbox{\hyperlink{structGpgFrontend_1_1Module_1_1ModuleInitArgs}{Module\+Init\+Args}} \item class \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1ModuleManager}{Module\+Manager}} \end{DoxyCompactItemize} \doxysubsection*{Typedefs} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a340abcd73c766e5691e90e504b3cd975}\label{namespaceGpgFrontend_1_1Module_a340abcd73c766e5691e90e504b3cd975}} using {\bfseries Event\+Refrernce} = std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1Event}{Event}} $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a0c3d65fe66a8f7e0fc93d0a45a899723}\label{namespaceGpgFrontend_1_1Module_a0c3d65fe66a8f7e0fc93d0a45a899723}} using {\bfseries Event\+Identifier} = QString \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_ad158f92b60cffde02f5d5560fd094d5e}\label{namespaceGpgFrontend_1_1Module_ad158f92b60cffde02f5d5560fd094d5e}} using {\bfseries Event\+Trigger\+Identifier} = QString \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a6abb965a4aab039e321111ac39045a56}\label{namespaceGpgFrontend_1_1Module_a6abb965a4aab039e321111ac39045a56}} using {\bfseries Evnets} = std\+::vector$<$ \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1Event}{Event}} $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a77e47a91519df4f0df6aaa47ba7e04b5}\label{namespaceGpgFrontend_1_1Module_a77e47a91519df4f0df6aaa47ba7e04b5}} using {\bfseries Module\+Identifier} = QString \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_aca4d4541b62bdd408e60d25ac9d77831}\label{namespaceGpgFrontend_1_1Module_aca4d4541b62bdd408e60d25ac9d77831}} using {\bfseries Module\+Ptr} = std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1Module}{Module}} $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a82533db0a36b076ebe095b76636b6df8}\label{namespaceGpgFrontend_1_1Module_a82533db0a36b076ebe095b76636b6df8}} using {\bfseries Module\+Raw\+Ptr} = \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1Module}{Module}} $\ast$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_ab93c267b476f6d61f9d4063e3242520a}\label{namespaceGpgFrontend_1_1Module_ab93c267b476f6d61f9d4063e3242520a}} using {\bfseries GMCPtr} = std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1GlobalModuleContext}{Global\+Module\+Context}} $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a1effc155d212189da35a2d00d385a2e5}\label{namespaceGpgFrontend_1_1Module_a1effc155d212189da35a2d00d385a2e5}} using {\bfseries GRTPtr} = std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1GlobalRegisterTable}{Global\+Register\+Table}} $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a23749acffc7c9b092530eda133175247}\label{namespaceGpgFrontend_1_1Module_a23749acffc7c9b092530eda133175247}} using {\bfseries Task\+Runner\+Ptr} = std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classGpgFrontend_1_1Thread_1_1TaskRunner}{Thread\+::\+Task\+Runner}} $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a32bd9a427f0726a36222753a10395059}\label{namespaceGpgFrontend_1_1Module_a32bd9a427f0726a36222753a10395059}} using {\bfseries Namespace} = QString \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a4d85e8bfe4d6ab0193e59535b0d2ed32}\label{namespaceGpgFrontend_1_1Module_a4d85e8bfe4d6ab0193e59535b0d2ed32}} using {\bfseries Key} = QString \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a326305250e96756a0eb3b8683bc836db}\label{namespaceGpgFrontend_1_1Module_a326305250e96756a0eb3b8683bc836db}} using {\bfseries LPCallback} = std\+::function$<$ void(Namespace, Key, int, std\+::any)$>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a939c65185b5cabe42e5cd187b3238e2c}\label{namespaceGpgFrontend_1_1Module_a939c65185b5cabe42e5cd187b3238e2c}} using {\bfseries Module\+Version} = QString \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a540ad137a43cb000c3b5f200c3edc036}\label{namespaceGpgFrontend_1_1Module_a540ad137a43cb000c3b5f200c3edc036}} using {\bfseries Module\+Meta\+Data} = QMap$<$ QString, QString $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_aa21d42624d1f3dc14ada7b1f609a132a}\label{namespaceGpgFrontend_1_1Module_aa21d42624d1f3dc14ada7b1f609a132a}} using {\bfseries Module\+Manger\+Ptr} = std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{classGpgFrontend_1_1Module_1_1ModuleManager}{Module\+Manager}} $>$ \end{DoxyCompactItemize} \doxysubsection*{Functions} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_aaafda413ba6ccb2e0e5e866f11cf8dc5}\label{namespaceGpgFrontend_1_1Module_aaafda413ba6ccb2e0e5e866f11cf8dc5}} {\footnotesize template$<$typename... Args$>$ }\\auto {\bfseries Make\+Event} (const Event\+Identifier \&event\+\_\+id, Args \&\&... args, Event\+::\+Event\+Callback e\+\_\+cb) -\/$>$ Event\+Refrernce \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a7f3912fe331338264ae22e434425f59e}\label{namespaceGpgFrontend_1_1Module_a7f3912fe331338264ae22e434425f59e}} void \mbox{\hyperlink{namespaceGpgFrontend_1_1Module_a7f3912fe331338264ae22e434425f59e}{Load\+Gpg\+Frontend\+Modules}} (\mbox{\hyperlink{structGpgFrontend_1_1Module_1_1ModuleInitArgs}{Module\+Init\+Args}} args) \begin{DoxyCompactList}\small\item\em init the module library \end{DoxyCompactList}\item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a25a2b6107e70c76ab0731f2685d94745}\label{namespaceGpgFrontend_1_1Module_a25a2b6107e70c76ab0731f2685d94745}} void \mbox{\hyperlink{namespaceGpgFrontend_1_1Module_a25a2b6107e70c76ab0731f2685d94745}{Shutdown\+Gpg\+Frontend\+Modules}} () \begin{DoxyCompactList}\small\item\em shutdown the module library \end{DoxyCompactList}\item auto \mbox{\hyperlink{namespaceGpgFrontend_1_1Module_ad603c5872c4d356cb59b70b63b99126c}{Is\+Module\+Activate}} (Module\+Identifier id) -\/$>$ bool \item auto \mbox{\hyperlink{namespaceGpgFrontend_1_1Module_a5e4614222306688d8c2f36fd4ae23de3}{Upsert\+RTValue}} (const QString \&namespace\+\_\+, const QString \&key, const std\+::any \&value) -\/$>$ bool \item auto \mbox{\hyperlink{namespaceGpgFrontend_1_1Module_af88df9c72a7e6ec8dede9afc7234aca7}{Listen\+RTPublish\+Event}} (QObject $\ast$o, Namespace n, Key k, LPCallback c) -\/$>$ bool \item auto \mbox{\hyperlink{namespaceGpgFrontend_1_1Module_a92a4ccb9246f778143ad3e88d2068d7c}{List\+RTChild\+Keys}} (const QString \&namespace\+\_\+, const QString \&key) -\/$>$ std\+::vector$<$ Key $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a0dd02118df9de6c1a538d8a4a9910129}\label{namespaceGpgFrontend_1_1Module_a0dd02118df9de6c1a538d8a4a9910129}} {\footnotesize template$<$typename T , typename... Args$>$ }\\void {\bfseries Register\+Module} (Args \&\&... args) \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a548ad04674384cf77aad447bc7eeaac0}\label{namespaceGpgFrontend_1_1Module_a548ad04674384cf77aad447bc7eeaac0}} {\footnotesize template$<$typename T , typename... Args$>$ }\\void {\bfseries Register\+And\+Activate\+Module} (Args \&\&... args) \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_accf5a43c8a79876c005b9d287e8ff245}\label{namespaceGpgFrontend_1_1Module_accf5a43c8a79876c005b9d287e8ff245}} {\footnotesize template$<$typename... Args$>$ }\\void {\bfseries Trigger\+Event} (const Event\+Identifier \&event\+\_\+id, Args \&\&... args, Event\+::\+Event\+Callback e\+\_\+cb=nullptr) \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a23a586d557162b22ef92dc316deb1edc}\label{namespaceGpgFrontend_1_1Module_a23a586d557162b22ef92dc316deb1edc}} {\footnotesize template$<$typename T $>$ }\\auto {\bfseries Retrieve\+RTValue\+Typed} (const QString \&namespace\+\_\+, const QString \&key) -\/$>$ std\+::optional$<$ T $>$ \item \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a9e9ac88fcd1c94018139dbe11ce21e90}\label{namespaceGpgFrontend_1_1Module_a9e9ac88fcd1c94018139dbe11ce21e90}} {\footnotesize template$<$typename T $>$ }\\auto {\bfseries Retrieve\+RTValue\+Typed\+Or\+Default} (const QString \&namespace\+\_\+, const QString \&key, const T \&default\+Value) -\/$>$ T \end{DoxyCompactItemize} \doxysubsection{Detailed Description} Copyright (C) 2021 Saturneric \href{mailto:eric@bktus.com}{\texttt{ eric@bktus.\+com}} This file is part of \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}}. \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}} is free software\+: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}} is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}}. If not, see \href{https://www.gnu.org/licenses/}{\texttt{ https\+://www.\+gnu.\+org/licenses/}}. The initial version of the source code is inherited from the gpg4usb project, which is under GPL-\/3.\+0-\/or-\/later. All the source code of \mbox{\hyperlink{namespaceGpgFrontend}{Gpg\+Frontend}} was modified and released by Saturneric \href{mailto:eric@bktus.com}{\texttt{ eric@bktus.\+com}} starting on May 12, 2021. SPDX-\/\+License-\/\+Identifier\+: GPL-\/3.\+0-\/or-\/later \doxysubsection{Function Documentation} \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_ad603c5872c4d356cb59b70b63b99126c}\label{namespaceGpgFrontend_1_1Module_ad603c5872c4d356cb59b70b63b99126c}} \index{GpgFrontend::Module@{GpgFrontend::Module}!IsModuleActivate@{IsModuleActivate}} \index{IsModuleActivate@{IsModuleActivate}!GpgFrontend::Module@{GpgFrontend::Module}} \doxysubsubsection{\texorpdfstring{IsModuleActivate()}{IsModuleActivate()}} {\footnotesize\ttfamily auto GPGFRONTEND\+\_\+\+CORE\+\_\+\+EXPORT Gpg\+Frontend\+::\+Module\+::\+Is\+Module\+Activate (\begin{DoxyParamCaption}\item[{Module\+Identifier}]{ }\end{DoxyParamCaption}) -\/$>$ bool} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} References Gpg\+Frontend\+::\+Singleton\+Function\+Object$<$ Module\+Manager $>$\+::\+Get\+Instance(). Referenced by Gpg\+Frontend\+::\+UI\+::\+About\+Dialog\+::\+About\+Dialog(), Gpg\+Frontend\+::\+UI\+::\+Network\+Tab\+::\+Network\+Tab(), Gpg\+Frontend\+::\+Gpg\+Advanced\+Operator\+::\+Start\+Dirmngr(), Gpg\+Frontend\+::\+Gpg\+Advanced\+Operator\+::\+Start\+Gpg\+Agent(), and Gpg\+Frontend\+::\+Gpg\+Advanced\+Operator\+::\+Start\+Key\+Boxd(). \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_af88df9c72a7e6ec8dede9afc7234aca7}\label{namespaceGpgFrontend_1_1Module_af88df9c72a7e6ec8dede9afc7234aca7}} \index{GpgFrontend::Module@{GpgFrontend::Module}!ListenRTPublishEvent@{ListenRTPublishEvent}} \index{ListenRTPublishEvent@{ListenRTPublishEvent}!GpgFrontend::Module@{GpgFrontend::Module}} \doxysubsubsection{\texorpdfstring{ListenRTPublishEvent()}{ListenRTPublishEvent()}} {\footnotesize\ttfamily auto GPGFRONTEND\+\_\+\+CORE\+\_\+\+EXPORT Gpg\+Frontend\+::\+Module\+::\+Listen\+RTPublish\+Event (\begin{DoxyParamCaption}\item[{QObject $\ast$}]{, }\item[{Namespace}]{, }\item[{Key}]{, }\item[{LPCallback}]{ }\end{DoxyParamCaption}) -\/$>$ bool} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} References Gpg\+Frontend\+::\+Singleton\+Function\+Object$<$ Module\+Manager $>$\+::\+Get\+Instance(). \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a92a4ccb9246f778143ad3e88d2068d7c}\label{namespaceGpgFrontend_1_1Module_a92a4ccb9246f778143ad3e88d2068d7c}} \index{GpgFrontend::Module@{GpgFrontend::Module}!ListRTChildKeys@{ListRTChildKeys}} \index{ListRTChildKeys@{ListRTChildKeys}!GpgFrontend::Module@{GpgFrontend::Module}} \doxysubsubsection{\texorpdfstring{ListRTChildKeys()}{ListRTChildKeys()}} {\footnotesize\ttfamily auto GPGFRONTEND\+\_\+\+CORE\+\_\+\+EXPORT Gpg\+Frontend\+::\+Module\+::\+List\+RTChild\+Keys (\begin{DoxyParamCaption}\item[{const QString \&}]{namespace\+\_\+, }\item[{const QString \&}]{key }\end{DoxyParamCaption}) -\/$>$ std\+::vector$<$ Key $>$} \begin{DoxyParams}{Parameters} {\em namespace\+\_\+} & \\ \hline {\em key} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} std\+::vector$<$\+Key$>$ \end{DoxyReturn} References Gpg\+Frontend\+::\+Singleton\+Function\+Object$<$ Module\+Manager $>$\+::\+Get\+Instance(). \mbox{\Hypertarget{namespaceGpgFrontend_1_1Module_a5e4614222306688d8c2f36fd4ae23de3}\label{namespaceGpgFrontend_1_1Module_a5e4614222306688d8c2f36fd4ae23de3}} \index{GpgFrontend::Module@{GpgFrontend::Module}!UpsertRTValue@{UpsertRTValue}} \index{UpsertRTValue@{UpsertRTValue}!GpgFrontend::Module@{GpgFrontend::Module}} \doxysubsubsection{\texorpdfstring{UpsertRTValue()}{UpsertRTValue()}} {\footnotesize\ttfamily auto GPGFRONTEND\+\_\+\+CORE\+\_\+\+EXPORT Gpg\+Frontend\+::\+Module\+::\+Upsert\+RTValue (\begin{DoxyParamCaption}\item[{const QString \&}]{namespace\+\_\+, }\item[{const QString \&}]{key, }\item[{const std\+::any \&}]{value }\end{DoxyParamCaption}) -\/$>$ bool} \begin{DoxyParams}{Parameters} {\em namespace\+\_\+} & \\ \hline {\em key} & \\ \hline {\em value} & \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} true false \end{DoxyReturn} References Gpg\+Frontend\+::\+Singleton\+Function\+Object$<$ Module\+Manager $>$\+::\+Get\+Instance(). Referenced by Gpg\+Frontend\+::\+Global\+Setting\+Station\+::\+Impl\+::\+Impl(), and Gpg\+Frontend\+::\+Gpg\+Advanced\+Operator\+::\+Restart\+Gpg\+Components().