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

Unified Diff: content/renderer/gpu/frame_swap_message_queue.h

Issue 2921713002: Reland "Send FrameSwapMessageQueue's messages in QueueMessageSwapPromise" with fixes (Closed)
Patch Set: Don't pass to RCFS Created 3 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: content/renderer/gpu/frame_swap_message_queue.h
diff --git a/content/renderer/gpu/frame_swap_message_queue.h b/content/renderer/gpu/frame_swap_message_queue.h
index 0b9e1c14a01dd50c8e3d950c837d0d3f365499bc..1dccf1d89c6f07dc01a4e7eec206afbb955e8ba7 100644
--- a/content/renderer/gpu/frame_swap_message_queue.h
+++ b/content/renderer/gpu/frame_swap_message_queue.h
@@ -13,6 +13,7 @@
#include "base/macros.h"
#include "base/memory/ref_counted.h"
#include "base/synchronization/lock.h"
+#include "base/threading/thread_checker.h"
#include "cc/output/swap_promise.h"
#include "content/common/content_export.h"
#include "content/renderer/message_delivery_policy.h"
@@ -37,7 +38,7 @@ class CONTENT_EXPORT FrameSwapMessageQueue
virtual ~SendMessageScope() {}
};
- FrameSwapMessageQueue();
+ explicit FrameSwapMessageQueue(int32_t routing_id);
// Queues message to be returned on a matching DrainMessages call.
//
@@ -98,6 +99,11 @@ class CONTENT_EXPORT FrameSwapMessageQueue
uint32_t AllocateFrameToken();
+ int32_t routing_id() const { return routing_id_; }
+
+ void NotifyFramesAreDiscarded(bool frames_are_discarded);
+ bool AreFramesDiscarded();
+
private:
friend class base::RefCountedThreadSafe<FrameSwapMessageQueue>;
@@ -110,6 +116,9 @@ class CONTENT_EXPORT FrameSwapMessageQueue
std::unique_ptr<FrameSwapMessageSubQueue> swap_queue_;
std::vector<std::unique_ptr<IPC::Message>> next_drain_messages_;
uint32_t last_used_frame_token_ = 0;
+ int32_t routing_id_ = 0;
+ bool frames_are_discarded_ = false;
+ THREAD_CHECKER(impl_thread_checker_);
DISALLOW_COPY_AND_ASSIGN(FrameSwapMessageQueue);
};
« no previous file with comments | « content/renderer/android/synchronous_compositor_frame_sink.cc ('k') | content/renderer/gpu/frame_swap_message_queue.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698