diff options
author | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> | 2012-05-24 15:47:52 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-05-30 01:54:45 +0200 |
commit | 770e0bb75653b93e9bf7525f5b9062dd3cff8fb5 (patch) | |
tree | 6e089444793b30f5524df5a1aa8bfa26c9bd1cac /src/gui/kernel/qplatformsharedgraphicscache.h | |
parent | 7cdcc267220db301080e7ade8e2f21e530e77b82 (diff) |
Add some batching functions to QPlatformSharedGraphicsCache iface
This adds some pure virtual functions to the interface to enable
batching requests.
The interface functions no longer need to be invokable, as
invokeMethod() is too slow to be used at the required frequency
anyway.
Change-Id: I89b607de1a28f3f4b728c334c04bcd443d4366b4
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
Diffstat (limited to 'src/gui/kernel/qplatformsharedgraphicscache.h')
-rw-r--r-- | src/gui/kernel/qplatformsharedgraphicscache.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/gui/kernel/qplatformsharedgraphicscache.h b/src/gui/kernel/qplatformsharedgraphicscache.h index 83752fbcb7..1960aa4590 100644 --- a/src/gui/kernel/qplatformsharedgraphicscache.h +++ b/src/gui/kernel/qplatformsharedgraphicscache.h @@ -76,14 +76,17 @@ public: explicit QPlatformSharedGraphicsCache(QObject *parent = 0) : QObject(parent) {} - Q_INVOKABLE virtual void ensureCacheInitialized(const QByteArray &cacheId, BufferType bufferType, + virtual void beginRequestBatch() = 0; + virtual void ensureCacheInitialized(const QByteArray &cacheId, BufferType bufferType, PixelFormat pixelFormat) = 0; - - Q_INVOKABLE virtual void requestItems(const QByteArray &cacheId, const QVector<quint32> &itemIds) = 0; - Q_INVOKABLE virtual void insertItems(const QByteArray &cacheId, + virtual void requestItems(const QByteArray &cacheId, const QVector<quint32> &itemIds) = 0; + virtual void insertItems(const QByteArray &cacheId, const QVector<quint32> &itemIds, const QVector<QImage> &items) = 0; - Q_INVOKABLE virtual void releaseItems(const QByteArray &cacheId, const QVector<quint32> &itemIds) = 0; + virtual void releaseItems(const QByteArray &cacheId, const QVector<quint32> &itemIds) = 0; + virtual void endRequestBatch() = 0; + + virtual bool requestBatchStarted() const = 0; virtual uint textureIdForBuffer(void *bufferId) = 0; virtual void referenceBuffer(void *bufferId) = 0; |