VirtualBox

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

Last change on this file since 86076 was 86076, checked in by vboxsync, 4 years ago

FE/Qt: bugref:9653: UICloudNetworkingStuff: Extend namespace with stuff to get cloud provider ID.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 14.9 KB
Line 
1/* $Id: UICloudNetworkingStuff.h 86076 2020-09-09 15:34:50Z 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 strProviderShortName,
46 * using @a pParent to show messages according to. */
47 SHARED_LIBRARY_STUFF CCloudProvider cloudProviderByShortName(const QString &strProviderShortName,
48 QWidget *pParent = 0);
49 /** Acquires cloud provider specified by @a strProviderShortName,
50 * using @a strErrorMessage to store messages to. */
51 SHARED_LIBRARY_STUFF CCloudProvider cloudProviderByShortName(const QString &strProviderShortName,
52 QString &strErrorMessage);
53 /** Acquires cloud profile specified by @a strProviderShortName and @a strProfileName,
54 * using @a pParent to show messages according to. */
55 SHARED_LIBRARY_STUFF CCloudProfile cloudProfileByName(const QString &strProviderShortName,
56 const QString &strProfileName,
57 QWidget *pParent = 0);
58 /** Acquires cloud profile specified by @a strProviderShortName and @a strProfileName,
59 * using @a strErrorMessage to store messages to. */
60 SHARED_LIBRARY_STUFF CCloudProfile cloudProfileByName(const QString &strProviderShortName,
61 const QString &strProfileName,
62 QString &strErrorMessage);
63 /** Acquires cloud client specified by @a strProviderShortName and @a strProfileName,
64 * using @a pParent to show messages according to. */
65 SHARED_LIBRARY_STUFF CCloudClient cloudClientByName(const QString &strProviderShortName,
66 const QString &strProfileName,
67 QWidget *pParent = 0);
68 /** Acquires cloud client specified by @a strProviderShortName and @a strProfileName,
69 * using @a strErrorMessage to store messages to. */
70 SHARED_LIBRARY_STUFF CCloudClient cloudClientByName(const QString &strProviderShortName,
71 const QString &strProfileName,
72 QString &strErrorMessage);
73 /** Acquires cloud machine specified by @a strProviderShortName, @a strProfileName and @a uMachineId,
74 * using @a pParent to show messages according to. */
75 SHARED_LIBRARY_STUFF CCloudMachine cloudMachineById(const QString &strProviderShortName,
76 const QString &strProfileName,
77 const QUuid &uMachineId,
78 QWidget *pParent = 0);
79 /** Acquires cloud machine specified by @a strProviderShortName, @a strProfileName and @a uMachineId,
80 * using @a strErrorMessage to store messages to. */
81 SHARED_LIBRARY_STUFF CCloudMachine cloudMachineById(const QString &strProviderShortName,
82 const QString &strProfileName,
83 const QUuid &uMachineId,
84 QString &strErrorMessage);
85
86 /** Acquires cloud providers, using @a pParent to show messages according to. */
87 SHARED_LIBRARY_STUFF QVector<CCloudProvider> listCloudProviders(QWidget *pParent = 0);
88 /** Acquires cloud providers, using @a strErrorMessage to store messages to. */
89 SHARED_LIBRARY_STUFF QVector<CCloudProvider> listCloudProviders(QString &strErrorMessage);
90
91 /** Acquires @a comCloudProvider ID as a @a uResult, using @a pParent to show messages according to. */
92 SHARED_LIBRARY_STUFF bool cloudProviderId(const CCloudProvider &comCloudProvider,
93 QUuid &uResult,
94 QWidget *pParent = 0);
95 /** Acquires @a comCloudProvider short name as a @a strResult, using @a pParent to show messages according to. */
96 SHARED_LIBRARY_STUFF bool cloudProviderShortName(const CCloudProvider &comCloudProvider,
97 QString &strResult,
98 QWidget *pParent = 0);
99
100 /** Acquires cloud profiles of certain @a comCloudProvider, using @a pParent to show messages according to. */
101 SHARED_LIBRARY_STUFF QVector<CCloudProfile> listCloudProfiles(CCloudProvider comCloudProvider,
102 QWidget *pParent = 0);
103 /** Acquires cloud profiles of certain @a comCloudProvider, using @a strErrorMessage to store messages to. */
104 SHARED_LIBRARY_STUFF QVector<CCloudProfile> listCloudProfiles(CCloudProvider comCloudProvider,
105 QString &strErrorMessage);
106
107 /** Acquires @a comCloudProfile name as a @a strResult, using @a pParent to show messages according to. */
108 SHARED_LIBRARY_STUFF bool cloudProfileName(const CCloudProfile &comCloudProfile,
109 QString &strResult,
110 QWidget *pParent = 0);
111
112 /** Acquires cloud machines of certain @a comCloudClient, using @a pParent to show messages according to. */
113 SHARED_LIBRARY_STUFF QVector<CCloudMachine> listCloudMachines(CCloudClient comCloudClient,
114 QWidget *pParent = 0);
115 /** Acquires cloud machines of certain @a comCloudClient, using @a strErrorMessage to store messages to. */
116 SHARED_LIBRARY_STUFF QVector<CCloudMachine> listCloudMachines(CCloudClient comCloudClient,
117 QString &strErrorMessage);
118
119 /** Acquires @a comCloudMachine ID as a @a uResult, using @a pParent to show messages according to. */
120 SHARED_LIBRARY_STUFF bool cloudMachineId(const CCloudMachine &comCloudMachine,
121 QUuid &uResult,
122 QWidget *pParent = 0);
123 /** Acquires @a comCloudMachine accessible state as a @a fResult, using @a pParent to show messages according to. */
124 SHARED_LIBRARY_STUFF bool cloudMachineAccessible(const CCloudMachine &comCloudMachine,
125 bool &fResult,
126 QWidget *pParent = 0);
127 /** Acquires @a comCloudMachine accessible error as a @a comResult, using @a pParent to show messages according to. */
128 SHARED_LIBRARY_STUFF bool cloudMachineAccessError(const CCloudMachine &comCloudMachine,
129 CVirtualBoxErrorInfo &comResult,
130 QWidget *pParent = 0);
131 /** Acquires @a comCloudMachine name as a @a strResult, using @a pParent to show messages according to. */
132 SHARED_LIBRARY_STUFF bool cloudMachineName(const CCloudMachine &comCloudMachine,
133 QString &strResult,
134 QWidget *pParent = 0);
135 /** Acquires @a comCloudMachine OS type ID as a @a strResult, using @a pParent to show messages according to. */
136 SHARED_LIBRARY_STUFF bool cloudMachineOSTypeId(const CCloudMachine &comCloudMachine,
137 QString &strResult,
138 QWidget *pParent = 0);
139 /** Acquires @a comCloudMachine state as a @a enmResult, using @a pParent to show messages according to. */
140 SHARED_LIBRARY_STUFF bool cloudMachineState(const CCloudMachine &comCloudMachine,
141 KCloudMachineState &enmResult,
142 QWidget *pParent = 0);
143 /** Acquires @a comCloudMachine console connection fingerprint as a @a strResult,
144 * using @a pParent to show messages according to. */
145 SHARED_LIBRARY_STUFF bool cloudMachineConsoleConnectionFingerprint(const CCloudMachine &comCloudMachine,
146 QString &strResult,
147 QWidget *pParent = 0);
148
149 /** Refreshes @a comCloudMachine information, using @a pParent to show messages according to.
150 * @note Be aware, this is a blocking function, corresponding progress dialog will be executed. */
151 SHARED_LIBRARY_STUFF bool refreshCloudMachineInfo(CCloudMachine comCloudMachine,
152 QWidget *pParent = 0);
153 /** Refreshes @a comCloudMachine information, using @a pParent to show messages according to.
154 * @note Be aware, this is a blocking function, it will hang for a time of progress being executed. */
155 SHARED_LIBRARY_STUFF bool refreshCloudMachineInfo(CCloudMachine comCloudMachine,
156 QString &strErrorMessage);
157 /** Acquires @a comCloudMachine settings form as a @a comResult, using @a pParent to show messages according to.
158 * @note Be aware, this is a blocking function, corresponding progress dialog will be executed. */
159 SHARED_LIBRARY_STUFF bool cloudMachineSettingsForm(CCloudMachine comCloudMachine,
160 CForm &comResult,
161 QWidget *pParent = 0);
162 /** Acquires @a comCloudMachine settings form as a @a comResult, using @a strErrorMessage to store messages to.
163 * @note Be aware, this is a blocking function, it will hang for a time of progress being executed. */
164 SHARED_LIBRARY_STUFF bool cloudMachineSettingsForm(CCloudMachine comCloudMachine,
165 CForm &comResult,
166 QString &strErrorMessage);
167
168 /** Applies @a comCloudMachine @a comForm settings, using @a pParent to show messages according to.
169 * @note Be aware, this is a blocking function, corresponding progress dialog will be executed. */
170 SHARED_LIBRARY_STUFF bool applyCloudMachineSettingsForm(CCloudMachine comCloudMachine,
171 CForm comForm,
172 QWidget *pParent = 0);
173
174 /** Acquires instance map.
175 * @param comCloudClient Brings cloud client object.
176 * @param strErrorMessage Brings error message container.
177 * @param pWidget Brings parent widget to show messages according to,
178 * if no parent set, progress will be executed in blocking way. */
179 SHARED_LIBRARY_STUFF QMap<QString, QString> listInstances(const CCloudClient &comCloudClient,
180 QString &strErrorMessage,
181 QWidget *pParent = 0);
182 /** Acquires instance info as a map.
183 * @param comCloudClient Brings cloud client object.
184 * @param strId Brings cloud instance id.
185 * @param strErrorMessage Brings error message container.
186 * @param pWidget Brings parent widget to show messages according to,
187 * if no parent set, progress will be executed in blocking way. */
188 SHARED_LIBRARY_STUFF QMap<KVirtualSystemDescriptionType, QString> getInstanceInfo(const CCloudClient &comCloudClient,
189 const QString &strId,
190 QString &strErrorMessage,
191 QWidget *pParent = 0);
192 /** Acquires instance info of certain @a enmType as a string.
193 * @param comCloudClient Brings cloud client object.
194 * @param strId Brings cloud instance id.
195 * @param strErrorMessage Brings error message container.
196 * @param pWidget Brings parent widget to show messages according to,
197 * if no parent set, progress will be executed in blocking way. */
198 SHARED_LIBRARY_STUFF QString getInstanceInfo(KVirtualSystemDescriptionType enmType,
199 const CCloudClient &comCloudClient,
200 const QString &strId,
201 QString &strErrorMessage,
202 QWidget *pParent = 0);
203 /** Acquires image info as a map.
204 * @param comCloudClient Brings cloud client object.
205 * @param strId Brings cloud image id.
206 * @param strErrorMessage Brings error message container.
207 * @param pWidget Brings parent widget to show messages according to,
208 * if no parent set, progress will be executed in blocking way. */
209 SHARED_LIBRARY_STUFF QMap<QString, QString> getImageInfo(const CCloudClient &comCloudClient,
210 const QString &strId,
211 QString &strErrorMessage,
212 QWidget *pParent = 0);
213}
214
215/* Using across any module who included us: */
216using namespace UICloudNetworkingStuff;
217
218#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