OLD | NEW |
1 // Copyright 2010 The Chromium Authors. All rights reserved. | 1 // Copyright 2010 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 VideoLayerChromium_h | 5 #ifndef VideoLayerChromium_h |
6 #define VideoLayerChromium_h | 6 #define VideoLayerChromium_h |
7 | 7 |
8 #include "base/callback.h" | 8 #include "base/callback.h" |
| 9 #include "cc/cc_export.h" |
9 #include "cc/layer.h" | 10 #include "cc/layer.h" |
10 | 11 |
11 namespace WebKit { | 12 namespace WebKit { |
12 class WebVideoFrame; | 13 class WebVideoFrame; |
13 class WebVideoFrameProvider; | 14 class WebVideoFrameProvider; |
14 } | 15 } |
15 | 16 |
16 namespace media { | 17 namespace media { |
17 class VideoFrame; | 18 class VideoFrame; |
18 } | 19 } |
19 | 20 |
20 namespace cc { | 21 namespace cc { |
21 | 22 |
22 class VideoLayerImpl; | 23 class VideoLayerImpl; |
23 | 24 |
24 // A Layer that contains a Video element. | 25 // A Layer that contains a Video element. |
25 class VideoLayer : public Layer { | 26 class CC_EXPORT VideoLayer : public Layer { |
26 public: | 27 public: |
27 typedef base::Callback<media::VideoFrame* (WebKit::WebVideoFrame*)> FrameUnw
rapper; | 28 typedef base::Callback<media::VideoFrame* (WebKit::WebVideoFrame*)> FrameUnw
rapper; |
28 | 29 |
29 static scoped_refptr<VideoLayer> create(WebKit::WebVideoFrameProvider*, | 30 static scoped_refptr<VideoLayer> create(WebKit::WebVideoFrameProvider*, |
30 const FrameUnwrapper&); | 31 const FrameUnwrapper&); |
31 | 32 |
32 virtual scoped_ptr<LayerImpl> createLayerImpl() OVERRIDE; | 33 virtual scoped_ptr<LayerImpl> createLayerImpl() OVERRIDE; |
33 | 34 |
34 private: | 35 private: |
35 VideoLayer(WebKit::WebVideoFrameProvider*, const FrameUnwrapper&); | 36 VideoLayer(WebKit::WebVideoFrameProvider*, const FrameUnwrapper&); |
36 virtual ~VideoLayer(); | 37 virtual ~VideoLayer(); |
37 | 38 |
38 // This pointer is only for passing to VideoLayerImpl's constructor. It shou
ld never be dereferenced by this class. | 39 // This pointer is only for passing to VideoLayerImpl's constructor. It shou
ld never be dereferenced by this class. |
39 WebKit::WebVideoFrameProvider* m_provider; | 40 WebKit::WebVideoFrameProvider* m_provider; |
40 FrameUnwrapper m_unwrapper; | 41 FrameUnwrapper m_unwrapper; |
41 }; | 42 }; |
42 | 43 |
43 } // namespace cc | 44 } // namespace cc |
44 | 45 |
45 #endif | 46 #endif |
OLD | NEW |