Chromium Code Reviews| Index: content/browser/media/capture/desktop_capture_device_aura.h |
| diff --git a/content/browser/media/capture/desktop_capture_device_aura.h b/content/browser/media/capture/desktop_capture_device_aura.h |
| index 8f3540a7fd6f4b2887525917273ae2531877668a..0cf1fdd438a0cced36d401f7b039ad57d189600e 100644 |
| --- a/content/browser/media/capture/desktop_capture_device_aura.h |
| +++ b/content/browser/media/capture/desktop_capture_device_aura.h |
| @@ -8,6 +8,7 @@ |
| #include <string> |
| #include "base/memory/scoped_ptr.h" |
| +#include "base/memory/weak_ptr.h" |
| #include "content/common/content_export.h" |
| #include "content/public/browser/desktop_media_id.h" |
| #include "media/video/capture/video_capture_device.h" |
| @@ -19,10 +20,12 @@ class Window; |
| namespace content { |
| class ContentVideoCaptureDeviceCore; |
| +class AuraWindowCaptureMachine; |
| // An implementation of VideoCaptureDevice that mirrors an Aura window. |
| class CONTENT_EXPORT DesktopCaptureDeviceAura |
| - : public media::VideoCaptureDevice { |
| + : public media::VideoCaptureDevice, |
| + public base::SupportsWeakPtr<DesktopCaptureDeviceAura> { |
|
Sergey Ulanov
2015/03/04 01:54:03
Please use WeakPtrFactory<> as a member instead of
|
| public: |
| // Creates a VideoCaptureDevice for the Aura desktop. |
| static media::VideoCaptureDevice* Create(const DesktopMediaID& source); |
| @@ -35,8 +38,11 @@ class CONTENT_EXPORT DesktopCaptureDeviceAura |
| void StopAndDeAllocate() override; |
| private: |
| - DesktopCaptureDeviceAura(const DesktopMediaID& source); |
| + DesktopCaptureDeviceAura(); |
| + void SetWindow(const DesktopMediaID& source); |
| + // machine_ is owned by core_. |
| + AuraWindowCaptureMachine* machine_; |
| const scoped_ptr<class ContentVideoCaptureDeviceCore> core_; |
| DISALLOW_COPY_AND_ASSIGN(DesktopCaptureDeviceAura); |