GpgFrontend-Doxygen/docs/latex/KeyPackageOperator_8h_source.tex
2022-05-09 03:59:26 +08:00

45 lines
3.2 KiB
TeX

\hypertarget{KeyPackageOperator_8h_source}{}\doxysection{Key\+Package\+Operator.\+h}
\label{KeyPackageOperator_8h_source}\index{src/core/function/KeyPackageOperator.h@{src/core/function/KeyPackageOperator.h}}
\begin{DoxyCode}{0}
\DoxyCodeLine{1 }
\DoxyCodeLine{29 \textcolor{preprocessor}{\#ifndef GPGFRONTEND\_KEYPACKAGEOPERATOR\_H}}
\DoxyCodeLine{30 \textcolor{preprocessor}{\#define GPGFRONTEND\_KEYPACKAGEOPERATOR\_H}}
\DoxyCodeLine{31 }
\DoxyCodeLine{32 \textcolor{preprocessor}{\#include "{}core/GpgFrontendCore.h"{}}}
\DoxyCodeLine{33 \textcolor{preprocessor}{\#include "{}core/function/gpg/GpgKeyImportExporter.h"{}}}
\DoxyCodeLine{34 }
\DoxyCodeLine{35 \textcolor{keyword}{namespace }\mbox{\hyperlink{namespaceGpgFrontend}{GpgFrontend}} \{}
\DoxyCodeLine{36 }
\DoxyCodeLine{41 \textcolor{keyword}{class }GPGFRONTEND\_CORE\_EXPORT \mbox{\hyperlink{classGpgFrontend_1_1KeyPackageOperator}{KeyPackageOperator}} \{}
\DoxyCodeLine{42 \textcolor{keyword}{public}:}
\DoxyCodeLine{51 \textcolor{keyword}{static} \textcolor{keywordtype}{bool} GeneratePassphrase(\textcolor{keyword}{const} std::filesystem::path \&phrase\_path,}
\DoxyCodeLine{52 std::string \&phrase);}
\DoxyCodeLine{53 }
\DoxyCodeLine{59 \textcolor{keyword}{static} std::string GenerateKeyPackageName();}
\DoxyCodeLine{60 }
\DoxyCodeLine{72 \textcolor{keyword}{static} \textcolor{keywordtype}{bool} GenerateKeyPackage(\textcolor{keyword}{const} std::filesystem::path \&key\_package\_path,}
\DoxyCodeLine{73 \textcolor{keyword}{const} std::string \&key\_package\_name,}
\DoxyCodeLine{74 KeyIdArgsListPtr \&key\_ids, std::string \&phrase,}
\DoxyCodeLine{75 \textcolor{keywordtype}{bool} secret);}
\DoxyCodeLine{76 }
\DoxyCodeLine{86 \textcolor{keyword}{static} \textcolor{keywordtype}{bool} ImportKeyPackage(\textcolor{keyword}{const} std::filesystem::path \&key\_package\_path,}
\DoxyCodeLine{87 \textcolor{keyword}{const} std::filesystem::path \&phrase\_path,}
\DoxyCodeLine{88 \mbox{\hyperlink{classGpgFrontend_1_1GpgImportInformation}{GpgFrontend::GpgImportInformation}} \&import\_info);}
\DoxyCodeLine{89 }
\DoxyCodeLine{90 \textcolor{keyword}{private}:}
\DoxyCodeLine{96 \textcolor{keyword}{static} std::string \mbox{\hyperlink{classGpgFrontend_1_1KeyPackageOperator_a825d987dacd8a99d9d87729e1861a152}{generate\_key\_package\_name}}() \{}
\DoxyCodeLine{97 std::random\_device rd\_; }
\DoxyCodeLine{98 \textcolor{keyword}{auto} mt\_ = std::mt19937(rd\_()); }
\DoxyCodeLine{99 }
\DoxyCodeLine{100 std::uniform\_int\_distribution<int> dist(999, 99999);}
\DoxyCodeLine{101 \textcolor{keyword}{auto} file\_string = boost::format(\textcolor{stringliteral}{"{}KeyPackage\_\%1\%"{}}) \% dist(mt\_);}
\DoxyCodeLine{102 \textcolor{keywordflow}{return} file\_string.str();}
\DoxyCodeLine{103 \}}
\DoxyCodeLine{104 \};}
\DoxyCodeLine{105 \} \textcolor{comment}{// namespace GpgFrontend}}
\DoxyCodeLine{106 }
\DoxyCodeLine{107 \textcolor{preprocessor}{\#endif }\textcolor{comment}{// GPGFRONTEND\_KEYPACKAGEOPERATOR\_H}}
\end{DoxyCode}