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/CanvasCaptureMediaStreamTrack.h" |
| 7 |
| 8 #include "core/html/HTMLCanvasElement.h" |
| 9 #include "modules/mediacapturefromelement/AutoCanvasDrawListener.h" |
| 10 #include "platform/NotImplemented.h" |
| 11 |
| 12 namespace blink { |
| 13 |
| 14 |
| 15 CanvasCaptureMediaStreamTrack* CanvasCaptureMediaStreamTrack::create(MediaStream
Component* component, PassRefPtrWillBeRawPtr<HTMLCanvasElement> element, const P
assOwnPtr<WebCanvasCaptureHandler> handler) |
| 16 { |
| 17 return new CanvasCaptureMediaStreamTrack(component, element, handler); |
| 18 } |
| 19 |
| 20 HTMLCanvasElement* CanvasCaptureMediaStreamTrack::canvas() const |
| 21 { |
| 22 return m_canvasElement.get(); |
| 23 } |
| 24 |
| 25 void CanvasCaptureMediaStreamTrack::requestFrame() |
| 26 { |
| 27 notImplemented(); |
| 28 return; |
| 29 } |
| 30 |
| 31 DEFINE_TRACE(CanvasCaptureMediaStreamTrack) |
| 32 { |
| 33 visitor->trace(m_canvasElement); |
| 34 visitor->trace(m_drawListener); |
| 35 MediaStreamTrack::trace(visitor); |
| 36 } |
| 37 |
| 38 CanvasCaptureMediaStreamTrack::CanvasCaptureMediaStreamTrack(MediaStreamComponen
t* component, PassRefPtrWillBeRawPtr<HTMLCanvasElement> element, const PassOwnPt
r<WebCanvasCaptureHandler> handler) |
| 39 : MediaStreamTrack(element->executionContext(), component) |
| 40 , m_canvasElement(element) |
| 41 { |
| 42 suspendIfNeeded(); |
| 43 m_drawListener = AutoCanvasDrawListener::create(handler); |
| 44 m_canvasElement->addListener(m_drawListener.get()); |
| 45 } |
| 46 |
| 47 } // namespace blink |
OLD | NEW |