summaryrefslogtreecommitdiffstats
path: root/src/core/jobs/qabstractaspectjobmanager_p.h
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2015-06-09 09:30:22 +0100
committerJani Heikkinen <jani.heikkinen@theqtcompany.com>2015-06-10 09:52:25 +0000
commit9db7beabdbaa0182cc9fd25603a790db293d56eb (patch)
tree52314812b2cd0b3f6b4a65c14d92a7bda9ca1cac /src/core/jobs/qabstractaspectjobmanager_p.h
parent3779e007024b712dee5cd8c187950119ba811bcf (diff)
Make QAspectJobManager and base class private
Prevents leaking of private headers and allows use of QT3DCORE_PRIVATE_EXPORT for use with the job manager unit test. Change-Id: I7f0c2b2e27e88eee6cb686f5ae55c78b73ea27d3 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/core/jobs/qabstractaspectjobmanager_p.h')
-rw-r--r--src/core/jobs/qabstractaspectjobmanager_p.h23
1 files changed, 15 insertions, 8 deletions
diff --git a/src/core/jobs/qabstractaspectjobmanager_p.h b/src/core/jobs/qabstractaspectjobmanager_p.h
index 2ac2d9bcc..29f863ae0 100644
--- a/src/core/jobs/qabstractaspectjobmanager_p.h
+++ b/src/core/jobs/qabstractaspectjobmanager_p.h
@@ -37,23 +37,30 @@
#ifndef QABSTRACTASPECTJOBMANAGER_P_H
#define QABSTRACTASPECTJOBMANAGER_P_H
-#include <private/qobject_p.h>
+#include <QObject>
+
+#include <Qt3DCore/qaspectjob.h>
QT_BEGIN_NAMESPACE
namespace Qt3D {
-class QAbstractAspectJobManager;
-
-class QAbstractAspectJobManagerPrivate : public QObjectPrivate
+class QAbstractAspectJobManager : public QObject
{
+ Q_OBJECT
public:
- QAbstractAspectJobManagerPrivate()
- : QObjectPrivate()
- {}
+ explicit QAbstractAspectJobManager(QObject *p = 0);
+
+ virtual void initialize() {}
+ virtual void enqueueJobs(const QVector<QAspectJobPtr> &jobQueue) = 0;
+ virtual void waitForAllJobs() = 0;
+
+ // Callback signature for running SynchronizedJobs
+ typedef void (*JobFunction)(void *);
+ virtual void waitForPerThreadFunction(JobFunction func, void *arg) = 0;
};
-} // Qt3D
+} // namespace Qt3D
QT_END_NAMESPACE