OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 REMOTING_HOST_CHROMEOS_AURA_DESKTOP_CAPTURER_H_ | 5 #ifndef REMOTING_HOST_CHROMEOS_AURA_DESKTOP_CAPTURER_H_ |
6 #define REMOTING_HOST_CHROMEOS_AURA_DESKTOP_CAPTURER_H_ | 6 #define REMOTING_HOST_CHROMEOS_AURA_DESKTOP_CAPTURER_H_ |
7 | 7 |
| 8 #include <memory> |
| 9 |
8 #include "base/macros.h" | 10 #include "base/macros.h" |
9 #include "base/memory/scoped_ptr.h" | |
10 #include "base/memory/weak_ptr.h" | 11 #include "base/memory/weak_ptr.h" |
11 #include "third_party/webrtc/modules/desktop_capture/screen_capturer.h" | 12 #include "third_party/webrtc/modules/desktop_capture/screen_capturer.h" |
12 | 13 |
13 namespace cc { | 14 namespace cc { |
14 class CopyOutputResult; | 15 class CopyOutputResult; |
15 } // namespace cc | 16 } // namespace cc |
16 | 17 |
17 namespace aura { | 18 namespace aura { |
18 class Window; | 19 class Window; |
19 } // namespace aura | 20 } // namespace aura |
(...skipping 10 matching lines...) Expand all Loading... |
30 ~AuraDesktopCapturer() override; | 31 ~AuraDesktopCapturer() override; |
31 | 32 |
32 // webrtc::DesktopCapturer implementation. | 33 // webrtc::DesktopCapturer implementation. |
33 void Start(webrtc::DesktopCapturer::Callback* callback) override; | 34 void Start(webrtc::DesktopCapturer::Callback* callback) override; |
34 void Capture(const webrtc::DesktopRegion& region) override; | 35 void Capture(const webrtc::DesktopRegion& region) override; |
35 | 36 |
36 private: | 37 private: |
37 friend class AuraDesktopCapturerTest; | 38 friend class AuraDesktopCapturerTest; |
38 | 39 |
39 // Called when a copy of the layer is captured. | 40 // Called when a copy of the layer is captured. |
40 void OnFrameCaptured(scoped_ptr<cc::CopyOutputResult> result); | 41 void OnFrameCaptured(std::unique_ptr<cc::CopyOutputResult> result); |
41 | 42 |
42 // Points to the callback passed to webrtc::DesktopCapturer::Start(). | 43 // Points to the callback passed to webrtc::DesktopCapturer::Start(). |
43 webrtc::DesktopCapturer::Callback* callback_; | 44 webrtc::DesktopCapturer::Callback* callback_; |
44 | 45 |
45 // The root window of the Aura Shell. | 46 // The root window of the Aura Shell. |
46 aura::Window* desktop_window_; | 47 aura::Window* desktop_window_; |
47 | 48 |
48 base::WeakPtrFactory<AuraDesktopCapturer> weak_factory_; | 49 base::WeakPtrFactory<AuraDesktopCapturer> weak_factory_; |
49 | 50 |
50 DISALLOW_COPY_AND_ASSIGN(AuraDesktopCapturer); | 51 DISALLOW_COPY_AND_ASSIGN(AuraDesktopCapturer); |
51 }; | 52 }; |
52 | 53 |
53 } // namespace remoting | 54 } // namespace remoting |
54 | 55 |
55 #endif // REMOTING_HOST_CHROMEOS_AURA_DESKTOP_CAPTURER_H_ | 56 #endif // REMOTING_HOST_CHROMEOS_AURA_DESKTOP_CAPTURER_H_ |
OLD | NEW |