OLD | NEW |
| (Empty) |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include "config.h" | |
6 #include "modules/mediacapturefromelement/CanvasCaptureMediaStream.h" | |
7 | |
8 #include "core/html/HTMLCanvasElement.h" | |
9 #include "modules/mediacapturefromelement/AutoCanvasDrawListener.h" | |
10 #include "platform/NotImplemented.h" | |
11 #include "public/platform/WebMediaStream.h" | |
12 #include "public/platform/WebMediaStreamSource.h" | |
13 #include "public/platform/WebMediaStreamTrack.h" | |
14 | |
15 namespace blink { | |
16 | |
17 | |
18 CanvasCaptureMediaStream* CanvasCaptureMediaStream::create(MediaStreamDescriptor
* streamDescriptor, PassRefPtrWillBeRawPtr<HTMLCanvasElement> element) | |
19 { | |
20 return new CanvasCaptureMediaStream(streamDescriptor, element); | |
21 } | |
22 | |
23 CanvasCaptureMediaStream* CanvasCaptureMediaStream::create(MediaStreamDescriptor
* streamDescriptor, PassRefPtrWillBeRawPtr<HTMLCanvasElement> element, const Pas
sOwnPtr<WebCanvasCaptureHandler> handler) | |
24 { | |
25 CanvasCaptureMediaStream* stream = new CanvasCaptureMediaStream(streamDescri
ptor, element); | |
26 stream->initialize(handler); | |
27 return stream; | |
28 } | |
29 | |
30 HTMLCanvasElement* CanvasCaptureMediaStream::canvas() const | |
31 { | |
32 return m_canvasElement.get(); | |
33 } | |
34 | |
35 void CanvasCaptureMediaStream::requestFrame() | |
36 { | |
37 notImplemented(); | |
38 return; | |
39 } | |
40 | |
41 DEFINE_TRACE(CanvasCaptureMediaStream) | |
42 { | |
43 visitor->trace(m_canvasElement); | |
44 visitor->trace(m_drawListener); | |
45 MediaStream::trace(visitor); | |
46 } | |
47 | |
48 CanvasCaptureMediaStream::CanvasCaptureMediaStream(MediaStreamDescriptor* stream
Descriptor, PassRefPtrWillBeRawPtr<HTMLCanvasElement> element) | |
49 : MediaStream(element->executionContext(), streamDescriptor) | |
50 , m_canvasElement(element) { } | |
51 | |
52 void CanvasCaptureMediaStream::initialize(const PassOwnPtr<WebCanvasCaptureHandl
er> handler) | |
53 { | |
54 m_drawListener = AutoCanvasDrawListener::create(handler); | |
55 m_canvasElement->addListener(m_drawListener.get()); | |
56 } | |
57 | |
58 } // namespace blink | |
OLD | NEW |