OLD | NEW |
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 CONTENT_RENDERER_GPU_COMPOSITOR_EXTERNAL_BEGIN_FRAME_SOURCE_H_ | 5 #ifndef CONTENT_RENDERER_GPU_COMPOSITOR_EXTERNAL_BEGIN_FRAME_SOURCE_H_ |
6 #define CONTENT_RENDERER_GPU_COMPOSITOR_EXTERNAL_BEGIN_FRAME_SOURCE_H_ | 6 #define CONTENT_RENDERER_GPU_COMPOSITOR_EXTERNAL_BEGIN_FRAME_SOURCE_H_ |
7 | 7 |
8 #include <unordered_set> | 8 #include <unordered_set> |
9 | 9 |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
(...skipping 25 matching lines...) Expand all Loading... |
36 public: | 36 public: |
37 explicit CompositorExternalBeginFrameSource( | 37 explicit CompositorExternalBeginFrameSource( |
38 CompositorForwardingMessageFilter* filter, | 38 CompositorForwardingMessageFilter* filter, |
39 IPC::SyncMessageFilter* sync_message_filter, | 39 IPC::SyncMessageFilter* sync_message_filter, |
40 int routing_id); | 40 int routing_id); |
41 ~CompositorExternalBeginFrameSource() override; | 41 ~CompositorExternalBeginFrameSource() override; |
42 | 42 |
43 // cc::BeginFrameSource implementation. | 43 // cc::BeginFrameSource implementation. |
44 void AddObserver(cc::BeginFrameObserver* obs) override; | 44 void AddObserver(cc::BeginFrameObserver* obs) override; |
45 void RemoveObserver(cc::BeginFrameObserver* obs) override; | 45 void RemoveObserver(cc::BeginFrameObserver* obs) override; |
46 // TODO(eseckler): Track and forward BeginFrameAcks to browser. | |
47 void DidFinishFrame(cc::BeginFrameObserver* obs, | 46 void DidFinishFrame(cc::BeginFrameObserver* obs, |
48 const cc::BeginFrameAck& ack) override {} | 47 const cc::BeginFrameAck& ack) override; |
49 bool IsThrottled() const override; | 48 bool IsThrottled() const override; |
50 | 49 |
51 // cc::ExternalBeginFrameSourceClient implementation. | 50 // cc::ExternalBeginFrameSourceClient implementation. |
52 void OnNeedsBeginFrames(bool need_begin_frames) override; | 51 void OnNeedsBeginFrames(bool need_begin_frames) override; |
53 void OnDidFinishFrame(const cc::BeginFrameAck& ack) override; | 52 void OnDidFinishFrame(const cc::BeginFrameAck& ack) override; |
54 | 53 |
55 private: | 54 private: |
56 class CompositorExternalBeginFrameSourceProxy | 55 class CompositorExternalBeginFrameSourceProxy |
57 : public base::RefCountedThreadSafe< | 56 : public base::RefCountedThreadSafe< |
58 CompositorExternalBeginFrameSourceProxy> { | 57 CompositorExternalBeginFrameSourceProxy> { |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 scoped_refptr<IPC::SyncMessageFilter> message_sender_; | 89 scoped_refptr<IPC::SyncMessageFilter> message_sender_; |
91 int routing_id_; | 90 int routing_id_; |
92 CompositorForwardingMessageFilter::Handler begin_frame_source_filter_handler_; | 91 CompositorForwardingMessageFilter::Handler begin_frame_source_filter_handler_; |
93 | 92 |
94 DISALLOW_COPY_AND_ASSIGN(CompositorExternalBeginFrameSource); | 93 DISALLOW_COPY_AND_ASSIGN(CompositorExternalBeginFrameSource); |
95 }; | 94 }; |
96 | 95 |
97 } // namespace content | 96 } // namespace content |
98 | 97 |
99 #endif // CONTENT_RENDERER_GPU_COMPOSITOR_EXTERNAL_BEGIN_FRAME_SOURCE_H_ | 98 #endif // CONTENT_RENDERER_GPU_COMPOSITOR_EXTERNAL_BEGIN_FRAME_SOURCE_H_ |
OLD | NEW |