AuboStudio SDK  0.6.3
program_api_provider.h
浏览该文件的文档.
1#ifndef AUBO_SCOPE_PROGRAM_API_PROVIDER_H
2#define AUBO_SCOPE_PROGRAM_API_PROVIDER_H
3
7
8namespace arcs {
9namespace aubo_scope {
10
12
13/**
14 * Provides access to functionality and services relevant for program nodes.
15 * This includes what is available from within AuboScope, as well as creating
16 * additional model elements to be used within AuboScope.
17 */
19{
20public:
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 programs
42 *
43 * @return an instance of ProgramAPI
44 */
45 ProgramApiPtr getProgramApi();
46
47private:
49 friend class DataSwitch;
50 void *d_{ nullptr };
51};
52
53} // namespace aubo_scope
54} // namespace arcs
55
56#endif // AUBO_SCOPE_PROGRAM_API_PROVIDER_H
#define ARCS_CLASS_FORWARD(C)
Macro that forward declares a class and defines the respective smartpointers through ARCS_DECLARE_PTR...
Provides access to functionality and services relevant for program nodes.
SystemApiPtr getSystemApi()
Provides access to system related functionality
ProgramApiProvider(ProgramApiProvider &f)
ProgramApiPtr getProgramApi()
Provides access to functionality relevant related to programs
ProgramApiProvider(ProgramApiProvider &&f)
UserInterfaceApiPtr getUserInterfaceApi()
Provides access to functionality related to user interface and end user interaction