Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qquickworkerscript_p.h
Go to the documentation of this file.
1
// Copyright (C) 2016 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant
4
5
#
ifndef
QQUICKWORKERSCRIPT_P_H
6
#
define
QQUICKWORKERSCRIPT_P_H
7
8
//
9
// W A R N I N G
10
// -------------
11
//
12
// This file is not part of the Qt API. It exists purely as an
13
// implementation detail. This header file may change from version to
14
// version without notice, or even be removed.
15
//
16
// We mean it.
17
//
18
19
#
include
<
qqml
.
h
>
20
21
#
include
<
QtQmlWorkerScript
/
private
/
qtqmlworkerscriptglobal_p
.
h
>
22
#
include
<
QtQml
/
qqmlparserstatus
.
h
>
23
#
include
<
QtCore
/
qthread
.
h
>
24
#
include
<
QtQml
/
qjsvalue
.
h
>
25
#
include
<
QtCore
/
qurl
.
h
>
26
27
QT_BEGIN_NAMESPACE
28
29
30
class
QQuickWorkerScript;
31
class
QQuickWorkerScriptEnginePrivate
;
32
class
QQuickWorkerScriptEngine
:
public
QThread
33
{
34
Q_OBJECT
35
public
:
36
QQuickWorkerScriptEngine
(
QQmlEngine
*
parent
=
nullptr
);
37
~
QQuickWorkerScriptEngine
();
38
39
int
registerWorkerScript
(QQuickWorkerScript *);
40
void
removeWorkerScript
(
int
);
41
void
executeUrl
(
int
,
const
QUrl &);
42
void
sendMessage
(
int
,
const
QByteArray &);
43
44
protected
:
45
void
run
()
override
;
46
47
private
:
48
QQuickWorkerScriptEnginePrivate
*d;
49
};
50
51
class
Q_QMLWORKERSCRIPT_EXPORT
QQuickWorkerScript
:
public
QObject,
public
QQmlParserStatus
52
{
53
Q_OBJECT
54
Q_DISABLE_COPY_MOVE(QQuickWorkerScript)
55
Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged)
56
Q_PROPERTY(
bool
ready READ ready NOTIFY readyChanged REVISION(2, 15))
57
58
QML_NAMED_ELEMENT(WorkerScript);
59
QML_ADDED_IN_VERSION(2, 0)
60
61
Q_INTERFACES(QQmlParserStatus)
62
public
:
63
QQuickWorkerScript(QObject *parent =
nullptr
);
64
~QQuickWorkerScript();
65
66
QUrl source()
const
;
67
void
setSource(
const
QUrl &);
68
69
bool
ready()
const
;
70
71
public
Q_SLOTS:
72
void
sendMessage(QQmlV4FunctionPtr);
73
74
Q_SIGNALS:
75
void
sourceChanged();
76
Q_REVISION(2, 15)
void
readyChanged();
77
void
message(
const
QJSValue &messageObject);
78
79
protected
:
80
void
classBegin() override;
81
void
componentComplete() override;
82
bool
event(QEvent *) override;
83
84
private
:
85
QQuickWorkerScriptEngine *engine();
86
87
QUrl m_source;
88
QQuickWorkerScriptEngine *m_engine =
nullptr
;
89
int
m_scriptId = -1;
90
bool
m_componentComplete =
true
;
91
bool
m_ready =
false
;
92
};
93
94
QT_END_NAMESPACE
95
96
#
endif
// QQUICKWORKERSCRIPT_P_H
QQuickWorkerScriptEnginePrivate
Definition
qquickworkerscript.cpp:143
QQuickWorkerScriptEnginePrivate::m_lock
QMutex m_lock
Definition
qquickworkerscript.cpp:153
QQuickWorkerScriptEnginePrivate::event
bool event(QEvent *) override
This virtual function receives events to an object and should return true if the event e was recogniz...
Definition
qquickworkerscript.cpp:198
QQuickWorkerScriptEnginePrivate::method_sendMessage
static QV4::ReturnedValue method_sendMessage(const QV4::FunctionObject *, const QV4::Value *thisObject, const QV4::Value *argv, int argc)
Definition
qquickworkerscript.cpp:181
QQuickWorkerScriptEnginePrivate::reportScriptException
void reportScriptException(WorkerScript *, const QQmlError &error)
Definition
qquickworkerscript.cpp:305
QQuickWorkerScriptEnginePrivate::workerEngine
QV4::ExecutionEngine * workerEngine(int id)
Definition
qquickworkerscript.cpp:232
QQuickWorkerScriptEnginePrivate::m_wait
QWaitCondition m_wait
Definition
qquickworkerscript.cpp:154
QQuickWorkerScriptEnginePrivate::reportScriptReady
void reportScriptReady(WorkerScript *)
Definition
qquickworkerscript.cpp:298
QQuickWorkerScriptEnginePrivate::workers
QHash< int, QBiPointer< QV4::ExecutionEngine, QQuickWorkerScript > > workers
Definition
qquickworkerscript.cpp:160
QQuickWorkerScriptEnginePrivate::m_nextId
int m_nextId
Definition
qquickworkerscript.cpp:162
QQuickWorkerScriptEngine
Definition
qquickworkerscript_p.h:33
QQuickWorkerScriptEngine::executeUrl
void executeUrl(int, const QUrl &)
Definition
qquickworkerscript.cpp:428
QQuickWorkerScriptEngine::~QQuickWorkerScriptEngine
~QQuickWorkerScriptEngine()
Definition
qquickworkerscript.cpp:324
QQuickWorkerScriptEngine::sendMessage
void sendMessage(int, const QByteArray &)
Definition
qquickworkerscript.cpp:433
QQuickWorkerScriptEngine::removeWorkerScript
void removeWorkerScript(int)
Definition
qquickworkerscript.cpp:411
QQuickWorkerScriptEngine::run
void run() override
Definition
qquickworkerscript.cpp:438
QQuickWorkerScriptEngine::registerWorkerScript
int registerWorkerScript(QQuickWorkerScript *)
Definition
qquickworkerscript.cpp:401
QQuickWorkerScript
Definition
qquickworkerscript_p.h:52
WorkerDataEvent
Definition
qquickworkerscript.cpp:63
WorkerDataEvent::data
QByteArray data() const
Definition
qquickworkerscript.cpp:69
WorkerDataEvent::WorkerDataEvent
WorkerDataEvent(int workerId, const QByteArray &data)
Definition
qquickworkerscript.cpp:65
WorkerDestroyEvent
Definition
qquickworkerscript.cpp:114
WorkerDestroyEvent::WorkerDestroyEvent
WorkerDestroyEvent()
Definition
qquickworkerscript.cpp:116
WorkerErrorEvent
Definition
qquickworkerscript.cpp:95
WorkerErrorEvent::WorkerErrorEvent
WorkerErrorEvent(const QQmlError &error)
Definition
qquickworkerscript.cpp:97
WorkerErrorEvent::error
QQmlError error() const
Definition
qquickworkerscript.cpp:101
WorkerIdEvent
Definition
qquickworkerscript.cpp:50
WorkerIdEvent::workerId
int workerId() const
Definition
qquickworkerscript.cpp:56
WorkerIdEvent::WorkerIdEvent
WorkerIdEvent(int workerId, WorkerEventType type)
Definition
qquickworkerscript.cpp:52
WorkerLoadEvent
Definition
qquickworkerscript.cpp:76
WorkerLoadEvent::url
QUrl url() const
Definition
qquickworkerscript.cpp:82
WorkerLoadEvent::WorkerLoadEvent
WorkerLoadEvent(int workerId, const QUrl &url)
Definition
qquickworkerscript.cpp:78
WorkerReadyEvent
Definition
qquickworkerscript.cpp:108
WorkerReadyEvent::WorkerReadyEvent
WorkerReadyEvent()
Definition
qquickworkerscript.cpp:110
WorkerRemoveEvent
Definition
qquickworkerscript.cpp:89
WorkerRemoveEvent::WorkerRemoveEvent
WorkerRemoveEvent(int workerId)
Definition
qquickworkerscript.cpp:91
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
WorkerEventType
WorkerEventType
Definition
qquickworkerscript.cpp:40
WorkerEventType::Destroy
@ Destroy
Definition
qquickworkerscript.cpp:46
WorkerEventType::Remove
@ Remove
Definition
qquickworkerscript.cpp:43
WorkerEventType::Error
@ Error
Definition
qquickworkerscript.cpp:44
WorkerEventType::Ready
@ Ready
Definition
qquickworkerscript.cpp:45
WorkerEventType::Load
@ Load
Definition
qquickworkerscript.cpp:42
WorkerEventType::Data
@ Data
Definition
qquickworkerscript.cpp:41
V4_DEFINE_EXTENSION
V4_DEFINE_EXTENSION(WorkerScript, workerScriptExtension)
WorkerScript
Definition
qquickworkerscript.cpp:125
WorkerScript::~WorkerScript
~WorkerScript()=default
WorkerScript::ready
void ready(QQmlNotifyingBlob *blob) final
Definition
qquickworkerscript.cpp:362
WorkerScript::WorkerScript
WorkerScript(QV4::ExecutionEngine *engine)
Definition
qquickworkerscript.cpp:342
WorkerScript::p
QQuickWorkerScriptEnginePrivate * p
Definition
qquickworkerscript.cpp:130
WorkerScript::owner
QQuickWorkerScript * owner
Definition
qquickworkerscript.cpp:131
WorkerScript::engine
QV4::ExecutionEngine * engine
Definition
qquickworkerscript.cpp:129
qtdeclarative
src
qmlworkerscript
qquickworkerscript_p.h
Generated on
for Qt by
1.18.0