Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(124)

Side by Side Diff: gpu/command_buffer/service/mailbox_manager_sync.h

Issue 1331843005: Implemented new fence syncs which replaces the old sync points. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Some fixes Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef GPU_COMMAND_BUFFER_SERVICE_MAILBOX_MANAGER_SYNC_H_ 5 #ifndef GPU_COMMAND_BUFFER_SERVICE_MAILBOX_MANAGER_SYNC_H_
6 #define GPU_COMMAND_BUFFER_SERVICE_MAILBOX_MANAGER_SYNC_H_ 6 #define GPU_COMMAND_BUFFER_SERVICE_MAILBOX_MANAGER_SYNC_H_
7 7
8 #include <map> 8 #include <map>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 15 matching lines...) Expand all
26 // and across threads and driver level share groups by synchronizing 26 // and across threads and driver level share groups by synchronizing
27 // texture state. 27 // texture state.
28 class GPU_EXPORT MailboxManagerSync : public MailboxManager { 28 class GPU_EXPORT MailboxManagerSync : public MailboxManager {
29 public: 29 public:
30 MailboxManagerSync(); 30 MailboxManagerSync();
31 31
32 // MailboxManager implementation: 32 // MailboxManager implementation:
33 Texture* ConsumeTexture(const Mailbox& mailbox) override; 33 Texture* ConsumeTexture(const Mailbox& mailbox) override;
34 void ProduceTexture(const Mailbox& mailbox, Texture* texture) override; 34 void ProduceTexture(const Mailbox& mailbox, Texture* texture) override;
35 bool UsesSync() override; 35 bool UsesSync() override;
36 void PushTextureUpdates(uint32 sync_point) override; 36 void PushTextureUpdates(int channel_client_id,
37 void PullTextureUpdates(uint32 sync_point) override; 37 uint32 route_id,
38 uint32 release) override;
39 void PullTextureUpdates(int channel_client_id,
40 uint32 route_id,
41 uint32 release) override;
38 void TextureDeleted(Texture* texture) override; 42 void TextureDeleted(Texture* texture) override;
39 43
40 private: 44 private:
41 friend class base::RefCounted<MailboxManager>; 45 friend class base::RefCounted<MailboxManager>;
42 46
43 static bool SkipTextureWorkarounds(const Texture* texture); 47 static bool SkipTextureWorkarounds(const Texture* texture);
44 48
45 ~MailboxManagerSync() override; 49 ~MailboxManagerSync() override;
46 50
47 class TextureGroup : public base::RefCounted<TextureGroup> { 51 class TextureGroup : public base::RefCounted<TextureGroup> {
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 TextureToGroupMap texture_to_group_; 93 TextureToGroupMap texture_to_group_;
90 94
91 DISALLOW_COPY_AND_ASSIGN(MailboxManagerSync); 95 DISALLOW_COPY_AND_ASSIGN(MailboxManagerSync);
92 }; 96 };
93 97
94 } // namespage gles2 98 } // namespage gles2
95 } // namespace gpu 99 } // namespace gpu
96 100
97 #endif // GPU_COMMAND_BUFFER_SERVICE_MAILBOX_MANAGER_SYNC_H_ 101 #endif // GPU_COMMAND_BUFFER_SERVICE_MAILBOX_MANAGER_SYNC_H_
98 102
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698