VirtualBox

source: vbox/trunk/src/VBox/Frontends/VirtualBox/src/globals/UICloudNetworkingStuff.h@ 91158

Last change on this file since 91158 was 91158, checked in by vboxsync, 3 years ago

FE/Qt: bugref:10067: Extend UICloudNetworkingStuff with export/import description form generators.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 21.8 KB
Line 
1/* $Id: UICloudNetworkingStuff.h 91158 2021-09-08 14:32:51Z vboxsync $ */
2/** @file
3 * VBox Qt GUI - UICloudNetworkingStuff namespace declaration.
4 */
5
6/*
7 * Copyright (C) 2020 Oracle Corporation
8 *
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License (GPL) as published by the Free Software
13 * Foundation, in version 2 as it comes in the "COPYING" file of the
14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16 */
17
18#ifndef FEQT_INCLUDED_SRC_globals_UICloudNetworkingStuff_h
19#define FEQT_INCLUDED_SRC_globals_UICloudNetworkingStuff_h
20#ifndef RT_WITHOUT_PRAGMA_ONCE
21# pragma once
22#endif
23
24/* GUI includes: */
25#include "UILibraryDefs.h"
26
27/* COM includes: */
28#include "COMEnums.h"
29#include "CCloudClient.h"
30#include "CCloudMachine.h"
31#include "CCloudProfile.h"
32#include "CCloudProvider.h"
33#include "CCloudProviderManager.h"
34#include "CForm.h"
35
36/** Cloud networking stuff namespace. */
37namespace UICloudNetworkingStuff
38{
39 /** Acquires cloud provider manager,
40 * using @a pParent to show messages according to. */
41 SHARED_LIBRARY_STUFF CCloudProviderManager cloudProviderManager(QWidget *pParent = 0);
42 /** Acquires cloud provider manager,
43 * using @a strErrorMessage to store messages to. */
44 SHARED_LIBRARY_STUFF CCloudProviderManager cloudProviderManager(QString &strErrorMessage);
45 /** Acquires cloud provider specified by @a uProviderId,
46 * using @a pParent to show messages according to. */
47 SHARED_LIBRARY_STUFF CCloudProvider cloudProviderById(const QUuid &uProviderId,
48 QWidget *pParent = 0);
49 /** Acquires cloud provider specified by @a uProviderId,
50 * using @a strErrorMessage to store messages to. */
51 SHARED_LIBRARY_STUFF CCloudProvider cloudProviderById(const QUuid &uProviderId,
52 QString &strErrorMessage);
53 /** Acquires cloud provider specified by @a strProviderShortName,
54 * using @a pParent to show messages according to. */
55 SHARED_LIBRARY_STUFF CCloudProvider cloudProviderByShortName(const QString &strProviderShortName,
56 QWidget *pParent = 0);
57 /** Acquires cloud provider specified by @a strProviderShortName,
58 * using @a strErrorMessage to store messages to. */
59 SHARED_LIBRARY_STUFF CCloudProvider cloudProviderByShortName(const QString &strProviderShortName,
60 QString &strErrorMessage);
61 /** Acquires cloud profile specified by @a strProviderShortName and @a strProfileName,
62 * using @a pParent to show messages according to. */
63 SHARED_LIBRARY_STUFF CCloudProfile cloudProfileByName(const QString &strProviderShortName,
64 const QString &strProfileName,
65 QWidget *pParent = 0);
66 /** Acquires cloud profile specified by @a strProviderShortName and @a strProfileName,
67 * using @a strErrorMessage to store messages to. */
68 SHARED_LIBRARY_STUFF CCloudProfile cloudProfileByName(const QString &strProviderShortName,
69 const QString &strProfileName,
70 QString &strErrorMessage);
71 /** Acquires cloud client created for @a comProfile,
72 * using @a pParent to show messages according to. */
73 SHARED_LIBRARY_STUFF CCloudClient cloudClient(CCloudProfile comProfile,
74 QWidget *pParent = 0);
75 /** Acquires cloud client created for @a comProfile,
76 * using @a strErrorMessage to store messages to. */
77 SHARED_LIBRARY_STUFF CCloudClient cloudClient(CCloudProfile comProfile,
78 QString &strErrorMessage);
79 /** Acquires cloud client specified by @a strProviderShortName and @a strProfileName,
80 * using @a pParent to show messages according to. */
81 SHARED_LIBRARY_STUFF CCloudClient cloudClientByName(const QString &strProviderShortName,
82 const QString &strProfileName,
83 QWidget *pParent = 0);
84 /** Acquires cloud client specified by @a strProviderShortName and @a strProfileName,
85 * using @a strErrorMessage to store messages to. */
86 SHARED_LIBRARY_STUFF CCloudClient cloudClientByName(const QString &strProviderShortName,
87 const QString &strProfileName,
88 QString &strErrorMessage);
89 /** Acquires cloud machine specified by @a strProviderShortName, @a strProfileName and @a uMachineId,
90 * using @a pParent to show messages according to. */
91 SHARED_LIBRARY_STUFF CCloudMachine cloudMachineById(const QString &strProviderShortName,
92 const QString &strProfileName,
93 const QUuid &uMachineId,
94 QWidget *pParent = 0);
95 /** Acquires cloud machine specified by @a strProviderShortName, @a strProfileName and @a uMachineId,
96 * using @a strErrorMessage to store messages to. */
97 SHARED_LIBRARY_STUFF CCloudMachine cloudMachineById(const QString &strProviderShortName,
98 const QString &strProfileName,
99 const QUuid &uMachineId,
100 QString &strErrorMessage);
101
102 /** Creates virtual system description, using @a pParent to show messages according to. */
103 SHARED_LIBRARY_STUFF CVirtualSystemDescription createVirtualSystemDescription(QWidget *pParent = 0);
104 /** Creates virtual system description, using @a strErrorMessage to store messages to. */
105 SHARED_LIBRARY_STUFF CVirtualSystemDescription createVirtualSystemDescription(QString &strErrorMessage);
106
107 /** Acquires cloud providers, using @a pParent to show messages according to. */
108 SHARED_LIBRARY_STUFF QVector<CCloudProvider> listCloudProviders(QWidget *pParent = 0);
109 /** Acquires cloud providers, using @a strErrorMessage to store messages to. */
110 SHARED_LIBRARY_STUFF QVector<CCloudProvider> listCloudProviders(QString &strErrorMessage);
111
112 /** Acquires @a comCloudProvider ID as a @a uResult, using @a pParent to show messages according to. */
113 SHARED_LIBRARY_STUFF bool cloudProviderId(const CCloudProvider &comCloudProvider,
114 QUuid &uResult,
115 QWidget *pParent = 0);
116 /** Acquires @a comCloudProvider short name as a @a strResult, using @a pParent to show messages according to. */
117 SHARED_LIBRARY_STUFF bool cloudProviderShortName(const CCloudProvider &comCloudProvider,
118 QString &strResult,
119 QWidget *pParent = 0);
120 /** Acquires @a comCloudProvider name as a @a strResult, using @a pParent to show messages according to. */
121 SHARED_LIBRARY_STUFF bool cloudProviderName(const CCloudProvider &comCloudProvider,
122 QString &strResult,
123 QWidget *pParent = 0);
124
125 /** Acquires cloud profiles of certain @a comCloudProvider, using @a pParent to show messages according to. */
126 SHARED_LIBRARY_STUFF QVector<CCloudProfile> listCloudProfiles(CCloudProvider comCloudProvider,
127 QWidget *pParent = 0);
128 /** Acquires cloud profiles of certain @a comCloudProvider, using @a strErrorMessage to store messages to. */
129 SHARED_LIBRARY_STUFF QVector<CCloudProfile> listCloudProfiles(CCloudProvider comCloudProvider,
130 QString &strErrorMessage);
131
132 /** Acquires @a comCloudProfile name as a @a strResult, using @a pParent to show messages according to. */
133 SHARED_LIBRARY_STUFF bool cloudProfileName(const CCloudProfile &comCloudProfile,
134 QString &strResult,
135 QWidget *pParent = 0);
136 /** Acquires @a comCloudProfile properties as a @a keys/values using @a pParent to show messages according to. */
137 SHARED_LIBRARY_STUFF bool cloudProfileProperties(const CCloudProfile &comCloudProfile,
138 QVector<QString> &keys,
139 QVector<QString> &values,
140 QWidget *pParent = 0);
141
142 /** Acquires cloud images of certain @a comCloudClient, using @a pParent to show messages according to. */
143 SHARED_LIBRARY_STUFF bool listCloudImages(const CCloudClient &comCloudClient,
144 CStringArray &comNames,
145 CStringArray &comIDs,
146 QWidget *pParent = 0);
147 /** Acquires cloud images of certain @a comCloudClient, using @a strErrorMessage to store messages to. */
148 SHARED_LIBRARY_STUFF bool listCloudImages(const CCloudClient &comCloudClient,
149 CStringArray &comNames,
150 CStringArray &comIDs,
151 QString &strErrorMessage);
152 /** Acquires cloud source boot volumes of certain @a comCloudClient, using @a pParent to show messages according to. */
153 SHARED_LIBRARY_STUFF bool listCloudSourceBootVolumes(const CCloudClient &comCloudClient,
154 CStringArray &comNames,
155 CStringArray &comIDs,
156 QWidget *pParent = 0);
157 /** Acquires cloud source boot volumes of certain @a comCloudClient, using @a strErrorMessage to store messages to. */
158 SHARED_LIBRARY_STUFF bool listCloudSourceBootVolumes(const CCloudClient &comCloudClient,
159 CStringArray &comNames,
160 CStringArray &comIDs,
161 QString &strErrorMessage);
162 /** Acquires cloud source instances of certain @a comCloudClient, using @a pParent to show messages according to. */
163 SHARED_LIBRARY_STUFF bool listCloudSourceInstances(const CCloudClient &comCloudClient,
164 CStringArray &comNames,
165 CStringArray &comIDs,
166 QWidget *pParent = 0);
167 /** Acquires cloud source instances of certain @a comCloudClient, using @a strErrorMessage to store messages to. */
168 SHARED_LIBRARY_STUFF bool listCloudSourceInstances(const CCloudClient &comCloudClient,
169 CStringArray &comNames,
170 CStringArray &comIDs,
171 QString &strErrorMessage);
172
173 /** Acquires cloud machines of certain @a comCloudClient, using @a pParent to show messages according to. */
174 SHARED_LIBRARY_STUFF QVector<CCloudMachine> listCloudMachines(CCloudClient comCloudClient,
175 QWidget *pParent = 0);
176 /** Acquires cloud machines of certain @a comCloudClient, using @a strErrorMessage to store messages to. */
177 SHARED_LIBRARY_STUFF QVector<CCloudMachine> listCloudMachines(CCloudClient comCloudClient,
178 QString &strErrorMessage);
179 /** Acquires cloud machine stubs of certain @a comCloudClient, using @a pParent to show messages according to. */
180 SHARED_LIBRARY_STUFF QVector<CCloudMachine> listCloudMachineStubs(CCloudClient comCloudClient,
181 QWidget *pParent = 0);
182 /** Acquires cloud machine stubs of certain @a comCloudClient, using @a strErrorMessage to store messages to. */
183 SHARED_LIBRARY_STUFF QVector<CCloudMachine> listCloudMachineStubs(CCloudClient comCloudClient,
184 QString &strErrorMessage);
185
186 /** Acquires @a comCloudClient export description form as a @a comResult, using @a pParent to show messages according to.
187 * @note Be aware, this is a blocking function, corresponding progress dialog will be executed. */
188 SHARED_LIBRARY_STUFF bool exportDescriptionForm(CCloudClient comCloudClient,
189 CVirtualSystemDescription comDescription,
190 CVirtualSystemDescriptionForm &comResult,
191 QWidget *pParent = 0);
192 /** Acquires @a comCloudClient export description form as a @a comResult, using @a strErrorMessage to store messages to.
193 * @note Be aware, this is a blocking function, it will hang for a time of progress being executed. */
194 SHARED_LIBRARY_STUFF bool exportDescriptionForm(CCloudClient comCloudClient,
195 CVirtualSystemDescription comDescription,
196 CVirtualSystemDescriptionForm &comResult,
197 QString &strErrorMessage);
198 /** Acquires @a comCloudClient import description form as a @a comResult, using @a pParent to show messages according to.
199 * @note Be aware, this is a blocking function, corresponding progress dialog will be executed. */
200 SHARED_LIBRARY_STUFF bool importDescriptionForm(CCloudClient comCloudClient,
201 CVirtualSystemDescription comDescription,
202 CVirtualSystemDescriptionForm &comResult,
203 QWidget *pParent = 0);
204 /** Acquires @a comCloudClient import description form as a @a comResult, using @a strErrorMessage to store messages to.
205 * @note Be aware, this is a blocking function, it will hang for a time of progress being executed. */
206 SHARED_LIBRARY_STUFF bool importDescriptionForm(CCloudClient comCloudClient,
207 CVirtualSystemDescription comDescription,
208 CVirtualSystemDescriptionForm &comResult,
209 QString &strErrorMessage);
210
211 /** Acquires @a comCloudMachine ID as a @a uResult, using @a pParent to show messages according to. */
212 SHARED_LIBRARY_STUFF bool cloudMachineId(const CCloudMachine &comCloudMachine,
213 QUuid &uResult,
214 QWidget *pParent = 0);
215 /** Acquires @a comCloudMachine accessible state as a @a fResult, using @a pParent to show messages according to. */
216 SHARED_LIBRARY_STUFF bool cloudMachineAccessible(const CCloudMachine &comCloudMachine,
217 bool &fResult,
218 QWidget *pParent = 0);
219 /** Acquires @a comCloudMachine accessible error as a @a comResult, using @a pParent to show messages according to. */
220 SHARED_LIBRARY_STUFF bool cloudMachineAccessError(const CCloudMachine &comCloudMachine,
221 CVirtualBoxErrorInfo &comResult,
222 QWidget *pParent = 0);
223 /** Acquires @a comCloudMachine name as a @a strResult, using @a pParent to show messages according to. */
224 SHARED_LIBRARY_STUFF bool cloudMachineName(const CCloudMachine &comCloudMachine,
225 QString &strResult,
226 QWidget *pParent = 0);
227 /** Acquires @a comCloudMachine OS type ID as a @a strResult, using @a pParent to show messages according to. */
228 SHARED_LIBRARY_STUFF bool cloudMachineOSTypeId(const CCloudMachine &comCloudMachine,
229 QString &strResult,
230 QWidget *pParent = 0);
231 /** Acquires @a comCloudMachine state as a @a enmResult, using @a pParent to show messages according to. */
232 SHARED_LIBRARY_STUFF bool cloudMachineState(const CCloudMachine &comCloudMachine,
233 KCloudMachineState &enmResult,
234 QWidget *pParent = 0);
235 /** Acquires @a comCloudMachine console connection fingerprint as a @a strResult,
236 * using @a pParent to show messages according to. */
237 SHARED_LIBRARY_STUFF bool cloudMachineConsoleConnectionFingerprint(const CCloudMachine &comCloudMachine,
238 QString &strResult,
239 QWidget *pParent = 0);
240
241 /** Acquires @a comCloudMachine settings form as a @a comResult, using @a pParent to show messages according to.
242 * @note Be aware, this is a blocking function, corresponding progress dialog will be executed. */
243 SHARED_LIBRARY_STUFF bool cloudMachineSettingsForm(CCloudMachine comCloudMachine,
244 CForm &comResult,
245 QWidget *pParent = 0);
246 /** Acquires @a comCloudMachine settings form as a @a comResult, using @a strErrorMessage to store messages to.
247 * @note Be aware, this is a blocking function, it will hang for a time of progress being executed. */
248 SHARED_LIBRARY_STUFF bool cloudMachineSettingsForm(CCloudMachine comCloudMachine,
249 CForm &comResult,
250 QString &strErrorMessage);
251
252 /** Applies @a comCloudMachine @a comForm settings, using @a pParent to show messages according to.
253 * @note Be aware, this is a blocking function, corresponding progress dialog will be executed. */
254 SHARED_LIBRARY_STUFF bool applyCloudMachineSettingsForm(CCloudMachine comCloudMachine,
255 CForm comForm,
256 QWidget *pParent = 0);
257
258 /** Acquires instance map.
259 * @param comCloudClient Brings cloud client object.
260 * @param strErrorMessage Brings error message container.
261 * @param pWidget Brings parent widget to show messages according to,
262 * if no parent set, progress will be executed in blocking way. */
263 SHARED_LIBRARY_STUFF QMap<QString, QString> listInstances(const CCloudClient &comCloudClient,
264 QString &strErrorMessage,
265 QWidget *pParent = 0);
266 /** Acquires instance info as a map.
267 * @param comCloudClient Brings cloud client object.
268 * @param strId Brings cloud instance id.
269 * @param strErrorMessage Brings error message container.
270 * @param pWidget Brings parent widget to show messages according to,
271 * if no parent set, progress will be executed in blocking way. */
272 SHARED_LIBRARY_STUFF QMap<KVirtualSystemDescriptionType, QString> getInstanceInfo(const CCloudClient &comCloudClient,
273 const QString &strId,
274 QString &strErrorMessage,
275 QWidget *pParent = 0);
276 /** Acquires instance info of certain @a enmType as a string.
277 * @param comCloudClient Brings cloud client object.
278 * @param strId Brings cloud instance id.
279 * @param strErrorMessage Brings error message container.
280 * @param pWidget Brings parent widget to show messages according to,
281 * if no parent set, progress will be executed in blocking way. */
282 SHARED_LIBRARY_STUFF QString getInstanceInfo(KVirtualSystemDescriptionType enmType,
283 const CCloudClient &comCloudClient,
284 const QString &strId,
285 QString &strErrorMessage,
286 QWidget *pParent = 0);
287 /** Acquires image info as a map.
288 * @param comCloudClient Brings cloud client object.
289 * @param strId Brings cloud image id.
290 * @param strErrorMessage Brings error message container.
291 * @param pWidget Brings parent widget to show messages according to,
292 * if no parent set, progress will be executed in blocking way. */
293 SHARED_LIBRARY_STUFF QMap<QString, QString> getImageInfo(const CCloudClient &comCloudClient,
294 const QString &strId,
295 QString &strErrorMessage,
296 QWidget *pParent = 0);
297}
298
299/* Using across any module who included us: */
300using namespace UICloudNetworkingStuff;
301
302#endif /* !FEQT_INCLUDED_SRC_globals_UICloudNetworkingStuff_h */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette