OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 WEBKIT_RENDERER_COMPOSITOR_BINDINGS_WEB_EXTERNAL_BITMAP_IMPL_H_ | 5 #ifndef CONTENT_RENDERER_COMPOSITOR_BINDINGS_WEB_EXTERNAL_BITMAP_IMPL_H_ |
6 #define WEBKIT_RENDERER_COMPOSITOR_BINDINGS_WEB_EXTERNAL_BITMAP_IMPL_H_ | 6 #define CONTENT_RENDERER_COMPOSITOR_BINDINGS_WEB_EXTERNAL_BITMAP_IMPL_H_ |
7 | 7 |
8 #include "base/bind.h" | 8 #include "base/bind.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "content/common/content_export.h" |
10 #include "third_party/WebKit/public/platform/WebExternalBitmap.h" | 11 #include "third_party/WebKit/public/platform/WebExternalBitmap.h" |
11 #include "webkit/renderer/compositor_bindings/webkit_compositor_bindings_export.
h" | |
12 | 12 |
13 namespace base { | 13 namespace base { |
14 class SharedMemory; | 14 class SharedMemory; |
15 } | 15 } |
16 | 16 |
17 namespace webkit { | 17 namespace content { |
18 | 18 |
19 typedef scoped_ptr<base::SharedMemory> (*SharedMemoryAllocationFunction)( | 19 typedef scoped_ptr<base::SharedMemory>(*SharedMemoryAllocationFunction)(size_t); |
20 size_t); | |
21 | 20 |
22 // Sets the function that this will use to allocate shared memory. | 21 // Sets the function that this will use to allocate shared memory. |
23 WEBKIT_COMPOSITOR_BINDINGS_EXPORT void SetSharedMemoryAllocationFunction( | 22 CONTENT_EXPORT void SetSharedMemoryAllocationFunction( |
24 SharedMemoryAllocationFunction); | 23 SharedMemoryAllocationFunction); |
25 | 24 |
26 class WebExternalBitmapImpl : public blink::WebExternalBitmap { | 25 class WebExternalBitmapImpl : public blink::WebExternalBitmap { |
27 public: | 26 public: |
28 WEBKIT_COMPOSITOR_BINDINGS_EXPORT explicit WebExternalBitmapImpl(); | 27 CONTENT_EXPORT explicit WebExternalBitmapImpl(); |
29 virtual ~WebExternalBitmapImpl(); | 28 virtual ~WebExternalBitmapImpl(); |
30 | 29 |
31 // blink::WebExternalBitmap implementation. | 30 // blink::WebExternalBitmap implementation. |
32 virtual blink::WebSize size() OVERRIDE; | 31 virtual blink::WebSize size() OVERRIDE; |
33 virtual void setSize(blink::WebSize size) OVERRIDE; | 32 virtual void setSize(blink::WebSize size) OVERRIDE; |
34 virtual uint8* pixels() OVERRIDE; | 33 virtual uint8* pixels() OVERRIDE; |
35 | 34 |
36 base::SharedMemory* shared_memory() { return shared_memory_.get(); } | 35 base::SharedMemory* shared_memory() { return shared_memory_.get(); } |
37 | 36 |
38 private: | 37 private: |
39 scoped_ptr<base::SharedMemory> shared_memory_; | 38 scoped_ptr<base::SharedMemory> shared_memory_; |
40 blink::WebSize size_; | 39 blink::WebSize size_; |
41 | 40 |
42 DISALLOW_COPY_AND_ASSIGN(WebExternalBitmapImpl); | 41 DISALLOW_COPY_AND_ASSIGN(WebExternalBitmapImpl); |
43 }; | 42 }; |
44 | 43 |
45 } // namespace webkit | 44 } // namespace content |
46 | 45 |
47 #endif // WEBKIT_RENDERER_COMPOSITOR_BINDINGS_WEB_EXTERNAL_BITMAP_IMPL_H_ | 46 #endif // CONTENT_RENDERER_COMPOSITOR_BINDINGS_WEB_EXTERNAL_BITMAP_IMPL_H_ |
| 47 |
OLD | NEW |