\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\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{classGpgFrontend_1_1GpgBasicOperator__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for Gpg\+Frontend\+::Gpg\+Basic\+Operator\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{classGpgFrontend_1_1GpgBasicOperator__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a139be86330f88e5f833aa24263a3b2ae}{Gpg\+Basic\+Operator}} (int channel=\mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_ad983153cbe3a0c32c123c506e04f31fc}{Singleton\+Function\+Object\+::\+Get\+Default\+Channel}}())
\begin{DoxyCompactList}\small\item\em Construct a new Basic Operator object. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a18fac140f828d738427e081aed152873}\label{classGpgFrontend_1_1GpgBasicOperator_a18fac140f828d738427e081aed152873}} 
void {\bfseries Encrypt} (const Key\+Args\+List \&, const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&, bool, const Gpg\+Operation\+Callback \&)
\item 
\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a86bad1916feef36c0729055e471cf026}\label{classGpgFrontend_1_1GpgBasicOperator_a86bad1916feef36c0729055e471cf026}} 
auto {\bfseries Encrypt\+Sync} (const Key\+Args\+List \&, const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&, bool) -\/$>$ std\+::tuple$<$ \mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr $>$
\item 
void \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_af95c6ea9e4a0aaccb17029557b63158a}{Encrypt\+Symmetric}} (const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, bool ascii, const Gpg\+Operation\+Callback \&cb)
\begin{DoxyCompactList}\small\item\em Call the interface provided by GPGME to symmetrical encryption. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a71018b8a86ec41ebd1050f437649b173}{Encrypt\+Symmetric\+Sync}} (const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, bool ascii) -\/$>$ std\+::tuple$<$ \mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr $>$
\item 
void \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a846cc480299eacc843cfb04a74f881ba}{Encrypt\+Sign}} (const Key\+Args\+List \&keys, const Key\+Args\+List \&signers, const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, bool ascii, const Gpg\+Operation\+Callback \&cb)
\begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme to perform encryption and signature operations at the same time. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a231f7ca2d8b56b3791497cdbb7754e44}{Encrypt\+Sign\+Sync}} (const Key\+Args\+List \&keys, const Key\+Args\+List \&signers, const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, bool ascii) -\/$>$ std\+::tuple$<$ \mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr $>$
\item 
void \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a508bdf67776fe4e393956d935784f9a4}{Decrypt}} (const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, const Gpg\+Operation\+Callback \&cb)
\begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme for decryption operation. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_af25a8b568723bf1c3b8b59ab1786238c}{Decrypt\+Sync}} (const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer) -\/$>$ std\+::tuple$<$ \mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr $>$
\item 
void \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a84a66a7a31269ba152c1329083540efc}{Decrypt\+Verify}} (const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, const Gpg\+Operation\+Callback \&cb)
\begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme to perform decryption and verification operations at the same time. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a2de32d6c71f3d559aab4ee78648878c0}{Decrypt\+Verify\+Sync}} (const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer) -\/$>$ std\+::tuple$<$ \mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr $>$
\item 
void \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_ae9a2f9923061efae82fe012ebc7a56ab}{Verify}} (const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&sig\+\_\+buffer, const Gpg\+Operation\+Callback \&cb)
\begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme for verification operation. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a3507dec7f2528c8627d3289cfb638a7a}{Verify\+Sync}} (const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&sig\+\_\+buffer) -\/$>$ std\+::tuple$<$ \mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr $>$
\item 
void \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_a8c52574f86bd8452a578143e08c7254b}{Sign}} (const Key\+Args\+List \&signers, const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, Gpg\+Sign\+Mode mode, bool ascii, const Gpg\+Operation\+Callback \&cb)
\begin{DoxyCompactList}\small\item\em Call the interface provided by gpgme for signing operation. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_aec37726d1386dcca7a75e1f2706bad77}{Sign\+Sync}} (const Key\+Args\+List \&signers, const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&in\+\_\+buffer, Gpg\+Sign\+Mode mode, bool ascii) -\/$>$ std\+::tuple$<$ \mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr $>$
\item 
void \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_aba9f6442dadcba29994d6680a4a0a8d6}{Set\+Signers}} (const Key\+Args\+List \&signers, bool ascii)
\begin{DoxyCompactList}\small\item\em Set the private key for signatures, this operation is a global operation. \end{DoxyCompactList}\item 
auto \mbox{\hyperlink{classGpgFrontend_1_1GpgBasicOperator_ad8ee6cea649bd5bba1f68f4ff53cdf41}{Get\+Signers}} (bool ascii) -\/$>$ std\+::unique\+\_\+ptr$<$ Key\+Args\+List $>$
\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_ad983153cbe3a0c32c123c506e04f31fc}{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}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a508bdf67776fe4e393956d935784f9a4}\label{classGpgFrontend_1_1GpgBasicOperator_a508bdf67776fe4e393956d935784f9a4}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!Decrypt@{Decrypt}}
\index{Decrypt@{Decrypt}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{Decrypt()}{Decrypt()}}
{\footnotesize\ttfamily void Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Decrypt (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{const Gpg\+Operation\+Callback \&}]{cb }\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 Gpg\+Frontend\+::\+Check\+Gpg\+Error(), ctx\+\_\+, Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Async().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_af25a8b568723bf1c3b8b59ab1786238c}\label{classGpgFrontend_1_1GpgBasicOperator_af25a8b568723bf1c3b8b59ab1786238c}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!DecryptSync@{DecryptSync}}
\index{DecryptSync@{DecryptSync}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{DecryptSync()}{DecryptSync()}}
{\footnotesize\ttfamily auto Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Decrypt\+Sync (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer }\end{DoxyParamCaption}) -\/$>$ std\+::tuple$<$\mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr$>$}


\begin{DoxyParams}{Parameters}
{\em in\+\_\+buffer} & \\
\hline
\end{DoxyParams}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Sync().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a84a66a7a31269ba152c1329083540efc}\label{classGpgFrontend_1_1GpgBasicOperator_a84a66a7a31269ba152c1329083540efc}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!DecryptVerify@{DecryptVerify}}
\index{DecryptVerify@{DecryptVerify}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{DecryptVerify()}{DecryptVerify()}}
{\footnotesize\ttfamily void Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Decrypt\+Verify (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{const Gpg\+Operation\+Callback \&}]{cb }\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 Gpg\+Frontend\+::\+Check\+Gpg\+Error(), ctx\+\_\+, Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Async().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a2de32d6c71f3d559aab4ee78648878c0}\label{classGpgFrontend_1_1GpgBasicOperator_a2de32d6c71f3d559aab4ee78648878c0}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!DecryptVerifySync@{DecryptVerifySync}}
\index{DecryptVerifySync@{DecryptVerifySync}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{DecryptVerifySync()}{DecryptVerifySync()}}
{\footnotesize\ttfamily auto Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Decrypt\+Verify\+Sync (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer }\end{DoxyParamCaption}) -\/$>$ std\+::tuple$<$\mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr$>$}


\begin{DoxyParams}{Parameters}
{\em in\+\_\+buffer} & \\
\hline
\end{DoxyParams}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Sync().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a846cc480299eacc843cfb04a74f881ba}\label{classGpgFrontend_1_1GpgBasicOperator_a846cc480299eacc843cfb04a74f881ba}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!EncryptSign@{EncryptSign}}
\index{EncryptSign@{EncryptSign}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{EncryptSign()}{EncryptSign()}}
{\footnotesize\ttfamily void Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Encrypt\+Sign (\begin{DoxyParamCaption}\item[{const Key\+Args\+List \&}]{keys,  }\item[{const Key\+Args\+List \&}]{signers,  }\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{bool}]{ascii,  }\item[{const Gpg\+Operation\+Callback \&}]{cb }\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 ascii} & ascii mode \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}

\end{DoxyReturn}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), ctx\+\_\+, Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Async(), and Set\+Signers().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a231f7ca2d8b56b3791497cdbb7754e44}\label{classGpgFrontend_1_1GpgBasicOperator_a231f7ca2d8b56b3791497cdbb7754e44}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!EncryptSignSync@{EncryptSignSync}}
\index{EncryptSignSync@{EncryptSignSync}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{EncryptSignSync()}{EncryptSignSync()}}
{\footnotesize\ttfamily auto Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Encrypt\+Sign\+Sync (\begin{DoxyParamCaption}\item[{const Key\+Args\+List \&}]{keys,  }\item[{const Key\+Args\+List \&}]{signers,  }\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{bool}]{ascii }\end{DoxyParamCaption}) -\/$>$ std\+::tuple$<$\mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr$>$}


\begin{DoxyParams}{Parameters}
{\em keys} & \\
\hline
{\em signers} & \\
\hline
{\em in\+\_\+buffer} & \\
\hline
{\em ascii} & \\
\hline
{\em cb} & \\
\hline
\end{DoxyParams}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Sync().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_af95c6ea9e4a0aaccb17029557b63158a}\label{classGpgFrontend_1_1GpgBasicOperator_af95c6ea9e4a0aaccb17029557b63158a}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!EncryptSymmetric@{EncryptSymmetric}}
\index{EncryptSymmetric@{EncryptSymmetric}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{EncryptSymmetric()}{EncryptSymmetric()}}
{\footnotesize\ttfamily void Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Encrypt\+Symmetric (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{bool}]{ascii,  }\item[{const Gpg\+Operation\+Callback \&}]{cb }\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 
\end{DoxyReturn}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), ctx\+\_\+, Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Async().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a71018b8a86ec41ebd1050f437649b173}\label{classGpgFrontend_1_1GpgBasicOperator_a71018b8a86ec41ebd1050f437649b173}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!EncryptSymmetricSync@{EncryptSymmetricSync}}
\index{EncryptSymmetricSync@{EncryptSymmetricSync}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{EncryptSymmetricSync()}{EncryptSymmetricSync()}}
{\footnotesize\ttfamily auto Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Encrypt\+Symmetric\+Sync (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{bool}]{ascii }\end{DoxyParamCaption}) -\/$>$ std\+::tuple$<$\mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr$>$}


\begin{DoxyParams}{Parameters}
{\em in\+\_\+buffer} & \\
\hline
{\em ascii} & \\
\hline
{\em cb} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
std\+::tuple$<$\+Gpg\+Error, Data\+Object\+Ptr$>$ 
\end{DoxyReturn}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Sync().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_ad8ee6cea649bd5bba1f68f4ff53cdf41}\label{classGpgFrontend_1_1GpgBasicOperator_ad8ee6cea649bd5bba1f68f4ff53cdf41}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!GetSigners@{GetSigners}}
\index{GetSigners@{GetSigners}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{GetSigners()}{GetSigners()}}
{\footnotesize\ttfamily auto Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Get\+Signers (\begin{DoxyParamCaption}\item[{bool}]{ascii }\end{DoxyParamCaption}) -\/$>$ std\+::unique\+\_\+ptr$<$Key\+Args\+List$>$}



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_aba9f6442dadcba29994d6680a4a0a8d6}\label{classGpgFrontend_1_1GpgBasicOperator_aba9f6442dadcba29994d6680a4a0a8d6}} 
\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[{const Key\+Args\+List \&}]{signers,  }\item[{bool}]{ascii }\end{DoxyParamCaption})}



Set the private key for signatures, this operation is a global operation. 


\begin{DoxyParams}{Parameters}
{\em keys} & \\
\hline
\end{DoxyParams}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), and ctx\+\_\+.



Referenced by Encrypt\+Sign(), and Sign().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a8c52574f86bd8452a578143e08c7254b}\label{classGpgFrontend_1_1GpgBasicOperator_a8c52574f86bd8452a578143e08c7254b}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!Sign@{Sign}}
\index{Sign@{Sign}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{Sign()}{Sign()}}
{\footnotesize\ttfamily void Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Sign (\begin{DoxyParamCaption}\item[{const Key\+Args\+List \&}]{signers,  }\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{Gpg\+Sign\+Mode}]{mode,  }\item[{bool}]{ascii,  }\item[{const Gpg\+Operation\+Callback \&}]{cb }\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 Gpg\+Frontend\+::\+Check\+Gpg\+Error(), ctx\+\_\+, Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Async(), and Set\+Signers().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_aec37726d1386dcca7a75e1f2706bad77}\label{classGpgFrontend_1_1GpgBasicOperator_aec37726d1386dcca7a75e1f2706bad77}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!SignSync@{SignSync}}
\index{SignSync@{SignSync}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{SignSync()}{SignSync()}}
{\footnotesize\ttfamily auto Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Sign\+Sync (\begin{DoxyParamCaption}\item[{const Key\+Args\+List \&}]{signers,  }\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{Gpg\+Sign\+Mode}]{mode,  }\item[{bool}]{ascii }\end{DoxyParamCaption}) -\/$>$ std\+::tuple$<$\mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr$>$}


\begin{DoxyParams}{Parameters}
{\em signers} & \\
\hline
{\em in\+\_\+buffer} & \\
\hline
{\em mode} & \\
\hline
{\em ascii} & \\
\hline
{\em cb} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
std\+::tuple$<$\+Gpg\+Error, Data\+Object\+Ptr$>$ 
\end{DoxyReturn}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), Gpg\+Frontend\+::\+Gpg\+Data\+::\+Read2\+GFBuffer(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Sync().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_ae9a2f9923061efae82fe012ebc7a56ab}\label{classGpgFrontend_1_1GpgBasicOperator_ae9a2f9923061efae82fe012ebc7a56ab}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!Verify@{Verify}}
\index{Verify@{Verify}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{Verify()}{Verify()}}
{\footnotesize\ttfamily void Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Verify (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{sig\+\_\+buffer,  }\item[{const Gpg\+Operation\+Callback \&}]{cb }\end{DoxyParamCaption})}



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 Gpg\+Frontend\+::\+Check\+Gpg\+Error(), ctx\+\_\+, and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Async().

\mbox{\Hypertarget{classGpgFrontend_1_1GpgBasicOperator_a3507dec7f2528c8627d3289cfb638a7a}\label{classGpgFrontend_1_1GpgBasicOperator_a3507dec7f2528c8627d3289cfb638a7a}} 
\index{GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}!VerifySync@{VerifySync}}
\index{VerifySync@{VerifySync}!GpgFrontend::GpgBasicOperator@{GpgFrontend::GpgBasicOperator}}
\doxysubsubsection{\texorpdfstring{VerifySync()}{VerifySync()}}
{\footnotesize\ttfamily auto Gpg\+Frontend\+::\+Gpg\+Basic\+Operator\+::\+Verify\+Sync (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{in\+\_\+buffer,  }\item[{const \mbox{\hyperlink{classGpgFrontend_1_1GFBuffer}{GFBuffer}} \&}]{sig\+\_\+buffer }\end{DoxyParamCaption}) -\/$>$ std\+::tuple$<$\mbox{\hyperlink{namespaceGpgFrontend_a2470eb154743191c3454203f23d3a2f8}{Gpg\+Error}}, Data\+Object\+Ptr$>$}


\begin{DoxyParams}{Parameters}
{\em in\+\_\+buffer} & \\
\hline
{\em sig\+\_\+buffer} & \\
\hline
{\em cb} & \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
std\+::tuple$<$\+Gpg\+Error, Data\+Object\+Ptr$>$ 
\end{DoxyReturn}


References Gpg\+Frontend\+::\+Check\+Gpg\+Error(), and Gpg\+Frontend\+::\+Run\+Gpg\+Opera\+Sync().



\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_ac963fee992753970bfb5c81608d4070f}{GpgContext::GetInstance}}(}
\DoxyCodeLine{      \mbox{\hyperlink{classGpgFrontend_1_1SingletonFunctionObject_a94ee1e1251023610590e675ae3de8bd5}{SingletonFunctionObject::GetChannel}}())}

\end{DoxyCode}


Corresponding context. 



Referenced by Decrypt(), Decrypt\+Verify(), Encrypt\+Sign(), Encrypt\+Symmetric(), Set\+Signers(), Sign(), and Verify().



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}
