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