\hypertarget{classGpgFrontend_1_1GpgBasicOperator}{}\doxysection{Gpg\+Frontend\+::Gpg\+Basic\+Operator Class Reference} \label{classGpgFrontend_1_1GpgBasicOperator}\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} Basic operation collection. {\ttfamily \#include $<$Gpg\+Basic\+Operator.\+h$>$} Inheritance diagram for Gpg\+Frontend\+::Gpg\+Basic\+Operator\+: % FIG 0 Collaboration diagram for Gpg\+Frontend\+::Gpg\+Basic\+Operator\+: % FIG 1 \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a139be86330f88e5f833aa24263a3b2ae}{Gpg\+Basic\+Operator}} (int channel=\mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_a50e2b3794d6553f4231eaec72d9d0a50}{Singleton\+Function\+Object\+::\+Get\+Default\+Channel}}()) \begin{DoxyCompactList}\small\item\em Construct a new Basic Operator object. \end{DoxyCompactList}\item gpg\+\_\+error\+\_\+t \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a32e1eac6bb0f322588ae75ae36a9884a}{Encrypt}} (Key\+List\+Ptr keys, Bype\+Array\+Ref in\+\_\+buffer, Byte\+Array\+Ptr \&out\+\_\+buffer, Gpg\+Encr\+Result \&result) \begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme for encryption operation. \end{DoxyCompactList}\item gpg\+\_\+error\+\_\+t \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a8f4ef57e941a066ad9d070eee51e2073}{Encrypt\+Symmetric}} (Bype\+Array\+Ref in\+\_\+buffer, Byte\+Array\+Ptr \&out\+\_\+buffer, Gpg\+Encr\+Result \&result) \begin{DoxyCompactList}\small\item\em Call the interface provided by GPGME to symmetrical encryption. \end{DoxyCompactList}\item gpgme\+\_\+error\+\_\+t \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a08906cf2bc2ddad8489438610f388f8a}{Encrypt\+Sign}} (Key\+List\+Ptr keys, Key\+List\+Ptr signers, Bype\+Array\+Ref in\+\_\+buffer, Byte\+Array\+Ptr \&out\+\_\+buffer, Gpg\+Encr\+Result \&encr\+\_\+result, Gpg\+Sign\+Result \&sign\+\_\+result) \begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme to perform encryption and signature operations at the same time. \end{DoxyCompactList}\item gpgme\+\_\+error\+\_\+t \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a9ea9e81194917e08f46eb657281b7953}{Decrypt}} (Bype\+Array\+Ref in\+\_\+buffer, Byte\+Array\+Ptr \&out\+\_\+buffer, Gpg\+Decr\+Result \&result) \begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme for decryption operation. \end{DoxyCompactList}\item gpgme\+\_\+error\+\_\+t \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a11845a9a3ea2941e14faa9130f0ac9ef}{Decrypt\+Verify}} (Bype\+Array\+Ref in\+\_\+buffer, Byte\+Array\+Ptr \&out\+\_\+buffer, Gpg\+Decr\+Result \&decrypt\+\_\+result, Gpg\+Verify\+Result \&verify\+\_\+result) \begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme to perform decryption and verification operations at the same time. \end{DoxyCompactList}\item gpgme\+\_\+error\+\_\+t \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_af0347cb28ff73b2250395ceaa9001509}{Verify}} (Bype\+Array\+Ref in\+\_\+buffer, Byte\+Array\+Ptr \&sig\+\_\+buffer, Gpg\+Verify\+Result \&result) const \begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme for verification operation. \end{DoxyCompactList}\item gpg\+\_\+error\+\_\+t \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a988d7e65e85fc7a578f26300332a65d3}{Sign}} (Key\+List\+Ptr signers, Bype\+Array\+Ref in\+\_\+buffer, Byte\+Array\+Ptr \&out\+\_\+buffer, gpgme\+\_\+sig\+\_\+mode\+\_\+t mode, Gpg\+Sign\+Result \&result) \begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme for signing operation. \end{DoxyCompactList}\item void \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_ad6ea3596ba7d7543fb1b8233d09996df}{Set\+Signers}} (Key\+Args\+List \&signers) \begin{DoxyCompactList}\small\item\em Set the private key for signatures, this operation is a global operation. \end{DoxyCompactList}\item std\+::unique\+\_\+ptr$<$ Key\+Args\+List $>$ \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a78f37b8d5afd6c0248665a4415f880cf}{Get\+Signers}} () \begin{DoxyCompactList}\small\item\em Get a global signature private keys that has been set. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection*{Private Attributes} \begin{DoxyCompactItemize} \item \mbox{\hyperlink{classGpgFrontend_1_1GpgContext}{Gpg\+Context}} \& \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_afad990a43ab06a060a93db9948ebb740}{ctx\+\_\+}} \begin{DoxyCompactList}\small\item\em Corresponding context. \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection*{Additional Inherited Members} \doxysubsection{Detailed Description} Basic operation collection. \doxysubsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a139be86330f88e5f833aa24263a3b2ae}\label{classGpgFrontend_1_1GpgBasicOperator_a139be86330f88e5f833aa24263a3b2ae}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!GpgBasicOperator@{GpgBasicOperator}} \index{GpgBasicOperator@{GpgBasicOperator}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{GpgBasicOperator()}{GpgBasicOperator()}} {\footnotesize\ttfamily Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Gpg\+Basic\+Operator (\begin{DoxyParamCaption}\item[{int}]{channel = {\ttfamily \mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_a50e2b3794d6553f4231eaec72d9d0a50}{Singleton\+Function\+Object\+::\+Get\+Default\+Channel}}()} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [explicit]}} Construct a new Basic Operator object. \begin{DoxyParams}{Parameters} {\em channel} & Channel corresponding to the context\\ \hline \end{DoxyParams} Copyright (C) 2021 Saturneric 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{Member Function Documentation} \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a9ea9e81194917e08f46eb657281b7953}\label{classGpgFrontend_1_1GpgBasicOperator_a9ea9e81194917e08f46eb657281b7953}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!Decrypt@{Decrypt}} \index{Decrypt@{Decrypt}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{Decrypt()}{Decrypt()}} {\footnotesize\ttfamily Gpg\+Frontend\+::\+Gpg\+Error Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Decrypt (\begin{DoxyParamCaption}\item[{Bype\+Array\+Ref}]{in\+\_\+buffer, }\item[{Gpg\+Frontend\+::\+Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{Gpg\+Frontend\+::\+Gpg\+Decr\+Result \&}]{result }\end{DoxyParamCaption})} Call the interface provided by gpgme for decryption operation. \begin{DoxyParams}{Parameters} {\em in\+\_\+buffer} & data that needs to be decrypted \\ \hline {\em out\+\_\+buffer} & decrypted data \\ \hline {\em result} & the result of the operation \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} error code \end{DoxyReturn} References \mbox{\hyperlink{namespaceGpgFrontend_a2a6566f59b4be29e453a1edd93f6a337}{Gpg\+Frontend\+::\+\_\+new\+\_\+result()}}, \mbox{\hyperlink{namespaceGpgFrontend_afdad4e5f4c3ac891c09216e245c0f48e}{Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error()}}, and \mbox{\hyperlink{classGpgFrontend_1_1GpgData_ae382a34ec551561315deca84c71c19c1}{Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer()}}. Referenced by \mbox{\hyperlink{classGpgFrontend_1_1GpgFileOpera_a74eb3ba532a236d8ad284b41265b0ccd}{Gpg\+Frontend\+::\+Gpg\+File\+Opera\+::\+Decrypt\+File()}}, and \mbox{\hyperlink{classGpgFrontend_1_1UI_1_1MainWindow_ae2d89e2cc6c99ff0e16b396d2381f904}{Gpg\+Frontend\+::\+UI\+::\+Main\+Window\+::slot\+\_\+decrypt()}}. \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a11845a9a3ea2941e14faa9130f0ac9ef}\label{classGpgFrontend_1_1GpgBasicOperator_a11845a9a3ea2941e14faa9130f0ac9ef}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!DecryptVerify@{DecryptVerify}} \index{DecryptVerify@{DecryptVerify}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{DecryptVerify()}{DecryptVerify()}} {\footnotesize\ttfamily gpgme\+\_\+error\+\_\+t Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Decrypt\+Verify (\begin{DoxyParamCaption}\item[{Bype\+Array\+Ref}]{in\+\_\+buffer, }\item[{Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{Gpg\+Decr\+Result \&}]{decrypt\+\_\+result, }\item[{Gpg\+Verify\+Result \&}]{verify\+\_\+result }\end{DoxyParamCaption})} Call the interface provided by gpgme to perform decryption and verification operations at the same time. \begin{DoxyParams}{Parameters} {\em in\+\_\+buffer} & data to be manipulated \\ \hline {\em out\+\_\+buffer} & data resulting from decryption operation \\ \hline {\em decrypt\+\_\+result} & the result of the decrypting operation \\ \hline {\em verify\+\_\+result} & the result of the verifying operation \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} error code \end{DoxyReturn} References \mbox{\hyperlink{namespaceGpgFrontend_a2a6566f59b4be29e453a1edd93f6a337}{Gpg\+Frontend\+::\+\_\+new\+\_\+result()}}, \mbox{\hyperlink{namespaceGpgFrontend_afdad4e5f4c3ac891c09216e245c0f48e}{Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error()}}, and \mbox{\hyperlink{classGpgFrontend_1_1GpgData_ae382a34ec551561315deca84c71c19c1}{Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer()}}. Referenced by \mbox{\hyperlink{classGpgFrontend_1_1GpgFileOpera_a90949b4e9e6116784260cd0e416551db}{Gpg\+Frontend\+::\+Gpg\+File\+Opera\+::\+Decrypt\+Verify\+File()}}, and \mbox{\hyperlink{classGpgFrontend_1_1UI_1_1MainWindow_a1d61ea803e6c825bd54f42ba9ae85919}{Gpg\+Frontend\+::\+UI\+::\+Main\+Window\+::slot\+\_\+decrypt\+\_\+verify()}}. \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a32e1eac6bb0f322588ae75ae36a9884a}\label{classGpgFrontend_1_1GpgBasicOperator_a32e1eac6bb0f322588ae75ae36a9884a}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!Encrypt@{Encrypt}} \index{Encrypt@{Encrypt}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{Encrypt()}{Encrypt()}} {\footnotesize\ttfamily Gpg\+Frontend\+::\+Gpg\+Error Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Encrypt (\begin{DoxyParamCaption}\item[{Key\+List\+Ptr}]{keys, }\item[{Gpg\+Frontend\+::\+Bype\+Array\+Ref}]{in\+\_\+buffer, }\item[{Gpg\+Frontend\+::\+Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{Gpg\+Frontend\+::\+Gpg\+Encr\+Result \&}]{result }\end{DoxyParamCaption})} Call the interface provided by gpgme for encryption operation. All incoming data pointers out\+\_\+buffer will be replaced with new valid values \begin{DoxyParams}{Parameters} {\em keys} & list of public keys \\ \hline {\em in\+\_\+buffer} & data that needs to be encrypted \\ \hline {\em out\+\_\+buffer} & encrypted data \\ \hline {\em result} & the result of the operation \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} error code \end{DoxyReturn} References \mbox{\hyperlink{namespaceGpgFrontend_a2a6566f59b4be29e453a1edd93f6a337}{Gpg\+Frontend\+::\+\_\+new\+\_\+result()}}, \mbox{\hyperlink{namespaceGpgFrontend_afdad4e5f4c3ac891c09216e245c0f48e}{Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error()}}, and \mbox{\hyperlink{classGpgFrontend_1_1GpgData_ae382a34ec551561315deca84c71c19c1}{Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer()}}. Referenced by \mbox{\hyperlink{classGpgFrontend_1_1GpgFileOpera_a234d939ae0b2c3f799dd01130fad9379}{Gpg\+Frontend\+::\+Gpg\+File\+Opera\+::\+Encrypt\+File()}}, and \mbox{\hyperlink{classGpgFrontend_1_1UI_1_1MainWindow_ae11d01211c2914ecc148e13dd7de506e}{Gpg\+Frontend\+::\+UI\+::\+Main\+Window\+::slot\+\_\+encrypt()}}. \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a08906cf2bc2ddad8489438610f388f8a}\label{classGpgFrontend_1_1GpgBasicOperator_a08906cf2bc2ddad8489438610f388f8a}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!EncryptSign@{EncryptSign}} \index{EncryptSign@{EncryptSign}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{EncryptSign()}{EncryptSign()}} {\footnotesize\ttfamily gpgme\+\_\+error\+\_\+t Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Encrypt\+Sign (\begin{DoxyParamCaption}\item[{Key\+List\+Ptr}]{keys, }\item[{Key\+List\+Ptr}]{signers, }\item[{Bype\+Array\+Ref}]{in\+\_\+buffer, }\item[{Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{Gpg\+Encr\+Result \&}]{encr\+\_\+result, }\item[{Gpg\+Sign\+Result \&}]{sign\+\_\+result }\end{DoxyParamCaption})} Call the interface provided by gpgme to perform encryption and signature operations at the same time. \begin{DoxyParams}{Parameters} {\em keys} & List of public keys \\ \hline {\em signers} & Private key for signatures \\ \hline {\em in\+\_\+buffer} & Data for operation \\ \hline {\em out\+\_\+buffer} & Encrypted data \\ \hline {\em encr\+\_\+result} & Encrypted results \\ \hline {\em sign\+\_\+result} & Signature result \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} \end{DoxyReturn} References \mbox{\hyperlink{namespaceGpgFrontend_a2a6566f59b4be29e453a1edd93f6a337}{Gpg\+Frontend\+::\+\_\+new\+\_\+result()}}, \mbox{\hyperlink{namespaceGpgFrontend_afdad4e5f4c3ac891c09216e245c0f48e}{Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error()}}, and \mbox{\hyperlink{classGpgFrontend_1_1GpgData_ae382a34ec551561315deca84c71c19c1}{Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer()}}. Referenced by \mbox{\hyperlink{classGpgFrontend_1_1GpgFileOpera_a6353e1688b113e5746aced6aa7f3876e}{Gpg\+Frontend\+::\+Gpg\+File\+Opera\+::\+Encrypt\+Sign\+File()}}, and \mbox{\hyperlink{classGpgFrontend_1_1UI_1_1MainWindow_a304efe91afa31b32725caa00c27475a4}{Gpg\+Frontend\+::\+UI\+::\+Main\+Window\+::slot\+\_\+encrypt\+\_\+sign()}}. \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a8f4ef57e941a066ad9d070eee51e2073}\label{classGpgFrontend_1_1GpgBasicOperator_a8f4ef57e941a066ad9d070eee51e2073}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!EncryptSymmetric@{EncryptSymmetric}} \index{EncryptSymmetric@{EncryptSymmetric}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{EncryptSymmetric()}{EncryptSymmetric()}} {\footnotesize\ttfamily gpg\+\_\+error\+\_\+t Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Encrypt\+Symmetric (\begin{DoxyParamCaption}\item[{Bype\+Array\+Ref}]{in\+\_\+buffer, }\item[{Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{Gpg\+Encr\+Result \&}]{result }\end{DoxyParamCaption})} Call the interface provided by GPGME to symmetrical encryption. \begin{DoxyParams}{Parameters} {\em in\+\_\+buffer} & Data for encryption \\ \hline {\em out\+\_\+buffer} & Encrypted data \\ \hline {\em result} & Encrypted results \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} gpg\+\_\+error\+\_\+t \end{DoxyReturn} References \mbox{\hyperlink{namespaceGpgFrontend_a2a6566f59b4be29e453a1edd93f6a337}{Gpg\+Frontend\+::\+\_\+new\+\_\+result()}}, \mbox{\hyperlink{namespaceGpgFrontend_afdad4e5f4c3ac891c09216e245c0f48e}{Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error()}}, and \mbox{\hyperlink{classGpgFrontend_1_1GpgData_ae382a34ec551561315deca84c71c19c1}{Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer()}}. Referenced by \mbox{\hyperlink{classGpgFrontend_1_1GpgFileOpera_a826efca057afb07157453b3b9e267b0f}{Gpg\+Frontend\+::\+Gpg\+File\+Opera\+::\+Encrypt\+File\+Symmetric()}}, and \mbox{\hyperlink{classGpgFrontend_1_1UI_1_1MainWindow_ae11d01211c2914ecc148e13dd7de506e}{Gpg\+Frontend\+::\+UI\+::\+Main\+Window\+::slot\+\_\+encrypt()}}. \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a78f37b8d5afd6c0248665a4415f880cf}\label{classGpgFrontend_1_1GpgBasicOperator_a78f37b8d5afd6c0248665a4415f880cf}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!GetSigners@{GetSigners}} \index{GetSigners@{GetSigners}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{GetSigners()}{GetSigners()}} {\footnotesize\ttfamily std\+::unique\+\_\+ptr$<$ Gpg\+Frontend\+::\+Key\+Args\+List $>$ Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Get\+Signers (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} Get a global signature private keys that has been set. \begin{DoxyReturn}{Returns} Intelligent pointer pointing to the private key list \end{DoxyReturn} \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_ad6ea3596ba7d7543fb1b8233d09996df}\label{classGpgFrontend_1_1GpgBasicOperator_ad6ea3596ba7d7543fb1b8233d09996df}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!SetSigners@{SetSigners}} \index{SetSigners@{SetSigners}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{SetSigners()}{SetSigners()}} {\footnotesize\ttfamily void Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Set\+Signers (\begin{DoxyParamCaption}\item[{Key\+Args\+List \&}]{signers }\end{DoxyParamCaption})} Set the private key for signatures, this operation is a global operation. \begin{DoxyParams}{Parameters} {\em keys} & \\ \hline \end{DoxyParams} References \mbox{\hyperlink{namespaceGpgFrontend_afdad4e5f4c3ac891c09216e245c0f48e}{Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error()}}. Referenced by \mbox{\hyperlink{classGpgFrontend_1_1GpgKeyManager_a12138780c53add7589f78f056019e5e0}{Gpg\+Frontend\+::\+Gpg\+Key\+Manager\+::\+Sign\+Key()}}. \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a988d7e65e85fc7a578f26300332a65d3}\label{classGpgFrontend_1_1GpgBasicOperator_a988d7e65e85fc7a578f26300332a65d3}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!Sign@{Sign}} \index{Sign@{Sign}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{Sign()}{Sign()}} {\footnotesize\ttfamily Gpg\+Frontend\+::\+Gpg\+Error Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Sign (\begin{DoxyParamCaption}\item[{Key\+List\+Ptr}]{signers, }\item[{Bype\+Array\+Ref}]{in\+\_\+buffer, }\item[{Byte\+Array\+Ptr \&}]{out\+\_\+buffer, }\item[{gpgme\+\_\+sig\+\_\+mode\+\_\+t}]{mode, }\item[{Gpg\+Sign\+Result \&}]{result }\end{DoxyParamCaption})} Call the interface provided by gpgme for signing operation. The signing modes are as follows\+: `GPGME\+\_\+\+SIG\+\_\+\+MODE\+\_\+\+NORMAL' A normal signature is made, the output includes the plaintext and the signature. `GPGME\+\_\+\+SIG\+\_\+\+MODE\+\_\+\+DETACH' A detached signature is made. `GPGME\+\_\+\+SIG\+\_\+\+MODE\+\_\+\+CLEAR' A clear text signature is made. The ASCII armor and text mode settings of the context are ignored. \begin{DoxyParams}{Parameters} {\em signers} & private keys for signing operations \\ \hline {\em in\+\_\+buffer} & data that needs to be signed \\ \hline {\em out\+\_\+buffer} & verified data \\ \hline {\em mode} & signing mode \\ \hline {\em result} & the result of the operation \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} error code \end{DoxyReturn} References \mbox{\hyperlink{namespaceGpgFrontend_a2a6566f59b4be29e453a1edd93f6a337}{Gpg\+Frontend\+::\+\_\+new\+\_\+result()}}, \mbox{\hyperlink{namespaceGpgFrontend_afdad4e5f4c3ac891c09216e245c0f48e}{Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error()}}, and \mbox{\hyperlink{classGpgFrontend_1_1GpgData_ae382a34ec551561315deca84c71c19c1}{Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+Buffer()}}. Referenced by \mbox{\hyperlink{classGpgFrontend_1_1GpgFileOpera_a350df1c07c054625c4755a78e6ca5ca8}{Gpg\+Frontend\+::\+Gpg\+File\+Opera\+::\+Sign\+File()}}, and \mbox{\hyperlink{classGpgFrontend_1_1UI_1_1MainWindow_a3f3d03b0ec22385bee559fbd2aeb881b}{Gpg\+Frontend\+::\+UI\+::\+Main\+Window\+::slot\+\_\+sign()}}. \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_af0347cb28ff73b2250395ceaa9001509}\label{classGpgFrontend_1_1GpgBasicOperator_af0347cb28ff73b2250395ceaa9001509}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!Verify@{Verify}} \index{Verify@{Verify}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{Verify()}{Verify()}} {\footnotesize\ttfamily Gpg\+Frontend\+::\+Gpg\+Error Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Verify (\begin{DoxyParamCaption}\item[{Bype\+Array\+Ref}]{in\+\_\+buffer, }\item[{Byte\+Array\+Ptr \&}]{sig\+\_\+buffer, }\item[{Gpg\+Verify\+Result \&}]{result }\end{DoxyParamCaption}) const} Call the interface provided by gpgme for verification operation. \begin{DoxyParams}{Parameters} {\em in\+\_\+buffer} & data that needs to be verified \\ \hline {\em out\+\_\+buffer} & verified data \\ \hline {\em result} & the result of the operation \\ \hline \end{DoxyParams} \begin{DoxyReturn}{Returns} error code \end{DoxyReturn} References \mbox{\hyperlink{namespaceGpgFrontend_a2a6566f59b4be29e453a1edd93f6a337}{Gpg\+Frontend\+::\+\_\+new\+\_\+result()}}, and \mbox{\hyperlink{namespaceGpgFrontend_afdad4e5f4c3ac891c09216e245c0f48e}{Gpg\+Frontend\+::check\+\_\+gpg\+\_\+error()}}. Referenced by \mbox{\hyperlink{classGpgFrontend_1_1UI_1_1MainWindow_aa9c986dd95984811479ea93230c74b5d}{Gpg\+Frontend\+::\+UI\+::\+Main\+Window\+::slot\+\_\+verify()}}, and \mbox{\hyperlink{classGpgFrontend_1_1GpgFileOpera_a14cddfe822c9410cd9c301d08963b7e7}{Gpg\+Frontend\+::\+Gpg\+File\+Opera\+::\+Verify\+File()}}. \doxysubsection{Member Data Documentation} \mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_afad990a43ab06a060a93db9948ebb740}\label{classGpgFrontend_1_1GpgBasicOperator_afad990a43ab06a060a93db9948ebb740}} \index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!ctx\_@{ctx\_}} \index{ctx\_@{ctx\_}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}} \doxysubsubsection{\texorpdfstring{ctx\_}{ctx\_}} {\footnotesize\ttfamily \mbox{\hyperlink{classGpgFrontend_1_1GpgContext}{Gpg\+Context}}\& Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::ctx\+\_\+\hspace{0.3cm}{\ttfamily [private]}} {\bfseries Initial value\+:} \begin{DoxyCode}{0} \DoxyCodeLine{= \mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_a8a378452876a685af879e04bfa456b6f}{GpgContext::GetInstance}}(} \DoxyCodeLine{ \mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_aa99440b9177f5d0c18840f08a40d64b7}{SingletonFunctionObject::GetChannel}}())} \end{DoxyCode} Corresponding context. The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} \item src/core/function/gpg/Gpg\+Basic\+Operator.\+h\item src/core/function/gpg/Gpg\+Basic\+Operator.\+cpp\end{DoxyCompactItemize}