AuboCaps  0.6.0
view_api_provider.h
Go to the documentation of this file.
1 #ifndef AUBO_SCOPE_VIEW_API_PROVIDER_H
2 #define AUBO_SCOPE_VIEW_API_PROVIDER_H
3 
6 
7 namespace arcs {
8 namespace aubo_scope {
9 ARCS_CLASS_FORWARD(ViewApiProvider);
10 
11 /**
12  * <p>
13  * Provides access to functionality relevant for the View (UI) of an
14  * installation or a program node contribution/
15  * </p>
16  *
17  * <b>NOTE:</b> This interface is not relevant for AuboCap program and
18  * installation nodes with a HTML-based user interface.
19  */
21 {
22 public:
26  virtual ~ViewApiProvider();
27 
28  /**
29  * Provides access to system related functionality.
30  *
31  * @return an instance of SystemAPI.
32  */
33  SystemApiPtr getSystemApi();
34 
35  /**
36  * Provides access to functionality related to user interface and user
37  * interaction.
38  *
39  * @return an instance of UserInterfaceAPI.
40  */
41  UserInterfaceApiPtr getUserInterfaceApi();
42 
43 private:
44  friend class DataSwitch;
45  void *d_{ nullptr };
46 };
47 
48 } // namespace aubo_scope
49 } // namespace arcs
50 
51 #endif // AUBO_SCOPE_VIEW_API_PROVIDER_H
UserInterfaceApiPtr getUserInterfaceApi()
Provides access to functionality related to user interface and user interaction.
ARCS_CLASS_FORWARD(GripForceCapability)
SystemApiPtr getSystemApi()
Provides access to system related functionality.