4#include <QtCore/qcoreapplication_platform.h>
6#include <QtCore/private/qcore_ohos_p.h>
7#include <QtCore/private/qnativeinterface_p.h>
8#include <QtCore/private/qohosjstools_p.h>
16 QOhosJsState &jsState,
const char *callerContextName,
17 const std::function<
void(QHarmonyJsContext &)> &task)
19 runQOhosJsCodeLoggingExceptions(
20 jsState.env(), callerContextName,
22 task(QHarmonyJsContext::fromEnv(jsState.env()));
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
76
77
78
79
80
81
82
83
84void QNativeInterface::QHarmonyApplication::runOnJsThread(std::function<
void(QHarmonyJsContext &)> task)
86 const char *funcInfo = Q_FUNC_INFO;
88 QOhosJsThreadGateway::invoke(
89 [task = std::move(task), funcInfo](QOhosJsState &jsState) {
90 runTaskLoggingExceptions(jsState, funcInfo, task);
95
96
97
98
99
100
101
102void QNativeInterface::QHarmonyApplication::runOnJsThreadAndWait(
const std::function<
void(QHarmonyJsContext &)> &task)
104 const char *funcInfo = Q_FUNC_INFO;
106 QOhosJsThreadGateway::runAndWait(
107 [&](QOhosJsState &jsState) {
108 runTaskLoggingExceptions(jsState, funcInfo, task);
114
115
116
117
118
119
120
121
122
123
126
127
128
129
130
131
132
133void QNativeInterface::QHarmonyApplication::runOnQtThread(std::function<
void()> task)
135 QtOhos::invokeInQtThread(std::move(task));
void runTaskLoggingExceptions(QOhosJsState &jsState, const char *callerContextName, const std::function< void(QHarmonyJsContext &)> &task)
QT_DEFINE_NATIVE_INTERFACE(QHarmonyApplication)