diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-11-14 15:41:05 +0100 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-11-26 08:59:24 +0000 |
commit | 75f794dfd1f60e4baefcaa53993cd817798a1b3f (patch) | |
tree | 311226648932d3f615150c01eedaaf234656be6b /src/core/delegated_frame_node.h | |
parent | d10007a2b15de7a530511968b4563164cb9e581b (diff) |
Reduce the amount of thread switches needed for fetching textures
Combine multiple texture fetches into a single sync call on another
thread.
Change-Id: Id372d5a11290105b36b34a4fc56bff9929304c20
Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'src/core/delegated_frame_node.h')
-rw-r--r-- | src/core/delegated_frame_node.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/core/delegated_frame_node.h b/src/core/delegated_frame_node.h index c627cdf95..4bddf4a62 100644 --- a/src/core/delegated_frame_node.h +++ b/src/core/delegated_frame_node.h @@ -123,7 +123,9 @@ private: // Making those callbacks static bypasses base::Bind's ref-counting requirement // of the this pointer when the callback is a method. static void pullTexture(DelegatedFrameNode *frameNode, MailboxTexture *mailbox); + static void pullTextures(DelegatedFrameNode *frameNode, const QVector<MailboxTexture *> mailboxes); static void fenceAndUnlockQt(DelegatedFrameNode *frameNode); + static void unlockQt(DelegatedFrameNode *frameNode); ResourceHolder *findAndHoldResource(unsigned resourceId, QHash<unsigned, QSharedPointer<ResourceHolder> > &candidates); void holdResources(const cc::DrawQuad *quad, QHash<unsigned, QSharedPointer<ResourceHolder> > &candidates); |