GpgFrontend Project A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.

GpgAdvancedOperator.h
1 /*
2 * Copyright (c) 2023. Saturneric
3 *
4 * This file is part of GpgFrontend.
5 *
6 * GpgFrontend is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * GpgFrontend is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with GpgFrontend. If not, see <https://www.gnu.org/licenses/>.
18 *
19 * The initial version of the source code is inherited from
20 * the gpg4usb project, which is under GPL-3.0-or-later.
21 *
22 * All the source code of GpgFrontend was modified and released by
23 * Saturneric<eric@bktus.com> starting on May 12, 2021.
24 *
25 * SPDX-License-Identifier: GPL-3.0-or-later
26 */
27
28 //
29 // Created by eric on 07.01.2023.
30 //
31
32 #ifndef GPGFRONTEND_GPGADVANCEDOPERATOR_H
33 #define GPGFRONTEND_GPGADVANCEDOPERATOR_H
34
35 #include "core/GpgConstants.h"
36 #include "core/GpgContext.h"
37 #include "core/GpgFunctionObject.h"
38
39 namespace GpgFrontend {
40
41 class GPGFRONTEND_CORE_EXPORT GpgAdvancedOperator
42 : public SingletonFunctionObject<GpgAdvancedOperator> {
43 public:
49 explicit GpgAdvancedOperator(
50 int channel = SingletonFunctionObject::GetDefaultChannel());
51
58 bool ClearGpgPasswordCache();
59
66 bool ReloadGpgComponents();
67
74 bool RestartGpgComponents();
75
82 bool ResetConfigures();
83
90 bool StartGpgAgent();
91
98 bool StartDirmngr();
99
106 bool StartKeyBoxd();
107
108 private:
109 GpgContext& ctx_ = GpgContext::GetInstance(
110 SingletonFunctionObject::GetChannel());
111 };
112
113 } // namespace GpgFrontend
114
115 #endif // GPGFRONTEND_GPGADVANCEDOPERATOR_H
GpgFrontend::GpgAdvancedOperator
Definition: GpgAdvancedOperator.h:42
GpgFrontend::GpgContext
Definition: GpgContext.h:71
GpgFrontend::SingletonFunctionObject
Definition: GpgFunctionObject.h:150
GpgFrontend::SingletonFunctionObject::GetDefaultChannel
static int GetDefaultChannel()
Get the Default Channel object.
Definition: GpgFunctionObject.h:251
GpgFrontend::SingletonFunctionObject< GpgContext >::GetInstance
static GpgContext & GetInstance(int channel=GpgFrontend::GPGFRONTEND_DEFAULT_CHANNEL)
Get the Instance object.
Definition: GpgFunctionObject.h:172
GpgFrontend::SingletonFunctionObject::GetChannel
int GetChannel() const
Get the Channel object.
Definition: GpgFunctionObject.h:258
GpgFrontend
Definition: CoreCommonUtil.cpp:31