AuboCaps  0.6.0
installation_api_provider.h
Go to the documentation of this file.
1 #ifndef AUBO_SCOPE_INSTALLATION_API_PROVIDER_H
2 #define AUBO_SCOPE_INSTALLATION_API_PROVIDER_H
3 
8 
9 namespace arcs {
10 namespace aubo_scope {
11 ARCS_CLASS_FORWARD(InstallationApiProvider);
12 
13 /**
14  * Provides access to functionality and services relevant for installation
15  * nodes. This includes what is available from within AuboScope, as well as
16  * creating additional model elements to be used within AuboScope.
17  */
19 {
20 public:
23  virtual ~InstallationApiProvider();
24 
25  /**
26  * Provides access to system related functionality
27  *
28  * @return an instance of SystemAPI
29  */
30  SystemApiPtr getSystemApi();
31 
32  /**
33  * Provides access to functionality related to user interface and end user
34  * interaction
35  *
36  * @return an instance of UserInterfaceAPI
37  */
38  UserInterfaceApiPtr getUserInterfaceApi();
39 
40  /**
41  * Provides access to functionality relevant related to the installation
42  *
43  * @return an instance of InstallationAPI
44  */
45  InstallationApiPtr getInstallationApi();
46 
47 private:
48  friend class DataSwitch;
50  void *d_{ nullptr };
51 };
52 
53 } // namespace aubo_scope
54 } // namespace arcs
55 
56 #endif // INSTALLATIONAPIPROVIDER_H
ARCS_CLASS_FORWARD(GripForceCapability)
InstallationApiPtr getInstallationApi()
Provides access to functionality relevant related to the installation.
Provides access to functionality and services relevant for installation nodes.
UserInterfaceApiPtr getUserInterfaceApi()
Provides access to functionality related to user interface and end user interaction.
SystemApiPtr getSystemApi()
Provides access to system related functionality.