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_PEPPER_PEPPER_COMPOSITOR_H_ | 5 #ifndef CONTENT_RENDERER_PEPPER_PEPPER_COMPOSITOR_H_ |
6 #define CONTENT_RENDERER_PEPPER_PEPPER_COMPOSITOR_H_ | 6 #define CONTENT_RENDERER_PEPPER_PEPPER_COMPOSITOR_H_ |
7 | 7 |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
10 #include "base/memory/weak_ptr.h" | 10 #include "base/memory/weak_ptr.h" |
(...skipping 24 matching lines...) Expand all Loading... |
35 // repaint of the page will also be scheduled. Failure means that the device | 35 // repaint of the page will also be scheduled. Failure means that the device |
36 // is already bound to a different instance, and nothing will happen. | 36 // is already bound to a different instance, and nothing will happen. |
37 bool BindToInstance(PepperPluginInstanceImpl* new_instance); | 37 bool BindToInstance(PepperPluginInstanceImpl* new_instance); |
38 | 38 |
39 const scoped_refptr<cc::Layer> layer() { return layer_; }; | 39 const scoped_refptr<cc::Layer> layer() { return layer_; }; |
40 | 40 |
41 void ViewInitiatedPaint(); | 41 void ViewInitiatedPaint(); |
42 void ViewFlushedPaint(); | 42 void ViewFlushedPaint(); |
43 | 43 |
44 private: | 44 private: |
45 virtual ~PepperCompositorHost(); | 45 ~PepperCompositorHost() override; |
46 | 46 |
47 void ImageReleased(int32_t id, | 47 void ImageReleased(int32_t id, |
48 const scoped_ptr<base::SharedMemory>& shared_memory, | 48 const scoped_ptr<base::SharedMemory>& shared_memory, |
49 uint32_t sync_point, | 49 uint32_t sync_point, |
50 bool is_lost); | 50 bool is_lost); |
51 void ResourceReleased(int32_t id, | 51 void ResourceReleased(int32_t id, |
52 uint32_t sync_point, | 52 uint32_t sync_point, |
53 bool is_lost); | 53 bool is_lost); |
54 void SendCommitLayersReplyIfNecessary(); | 54 void SendCommitLayersReplyIfNecessary(); |
55 void UpdateLayer(const scoped_refptr<cc::Layer>& layer, | 55 void UpdateLayer(const scoped_refptr<cc::Layer>& layer, |
56 const ppapi::CompositorLayerData* old_layer, | 56 const ppapi::CompositorLayerData* old_layer, |
57 const ppapi::CompositorLayerData* new_layer, | 57 const ppapi::CompositorLayerData* new_layer, |
58 scoped_ptr<base::SharedMemory> image_shm); | 58 scoped_ptr<base::SharedMemory> image_shm); |
59 | 59 |
60 // ResourceMessageHandler overrides: | 60 // ResourceMessageHandler overrides: |
61 virtual int32_t OnResourceMessageReceived( | 61 int32_t OnResourceMessageReceived( |
62 const IPC::Message& msg, | 62 const IPC::Message& msg, |
63 ppapi::host::HostMessageContext* context) override; | 63 ppapi::host::HostMessageContext* context) override; |
64 | 64 |
65 // ppapi::host::ResourceHost overrides: | 65 // ppapi::host::ResourceHost overrides: |
66 virtual bool IsCompositorHost() override; | 66 bool IsCompositorHost() override; |
67 | 67 |
68 // Message handlers: | 68 // Message handlers: |
69 int32_t OnHostMsgCommitLayers( | 69 int32_t OnHostMsgCommitLayers( |
70 ppapi::host::HostMessageContext* context, | 70 ppapi::host::HostMessageContext* context, |
71 const std::vector<ppapi::CompositorLayerData>& layers, | 71 const std::vector<ppapi::CompositorLayerData>& layers, |
72 bool reset); | 72 bool reset); |
73 | 73 |
74 // Non-owning pointer to the plugin instance this context is currently bound | 74 // Non-owning pointer to the plugin instance this context is currently bound |
75 // to, if any. If the context is currently unbound, this will be NULL. | 75 // to, if any. If the context is currently unbound, this will be NULL. |
76 PepperPluginInstanceImpl* bound_instance_; | 76 PepperPluginInstanceImpl* bound_instance_; |
(...skipping 16 matching lines...) Expand all Loading... |
93 ppapi::host::ReplyMessageContext commit_layers_reply_context_; | 93 ppapi::host::ReplyMessageContext commit_layers_reply_context_; |
94 | 94 |
95 base::WeakPtrFactory<PepperCompositorHost> weak_factory_; | 95 base::WeakPtrFactory<PepperCompositorHost> weak_factory_; |
96 | 96 |
97 DISALLOW_COPY_AND_ASSIGN(PepperCompositorHost); | 97 DISALLOW_COPY_AND_ASSIGN(PepperCompositorHost); |
98 }; | 98 }; |
99 | 99 |
100 } // namespace content | 100 } // namespace content |
101 | 101 |
102 #endif // CONTENT_RENDERER_PEPPER_PEPPER_COMPOSITOR_H_ | 102 #endif // CONTENT_RENDERER_PEPPER_PEPPER_COMPOSITOR_H_ |
OLD | NEW |