Index: webrtc/modules/desktop_capture/desktop_capturer.h |
diff --git a/webrtc/modules/desktop_capture/desktop_capturer.h b/webrtc/modules/desktop_capture/desktop_capturer.h |
index 6b9c820ce9df5ea3b739917db8e82671af0a0e86..ecae4cb2e092f2d5bb0518fe7842194407871f39 100644 |
--- a/webrtc/modules/desktop_capture/desktop_capturer.h |
+++ b/webrtc/modules/desktop_capture/desktop_capturer.h |
@@ -110,6 +110,28 @@ class DesktopCapturer { |
// Returns false in case of a failure or no source has been selected or the |
// implementation does not support this functionality. |
virtual bool FocusOnSelectedSource(); |
+ |
+ // Creates a DesktopCapturer instance which targets to capture windows. |
+ static std::unique_ptr<DesktopCapturer> CreateWindowCapturer( |
+ const DesktopCaptureOptions& options); |
+ |
+ // Creates a DesktopCapturer instance which targets to capture screens. |
+ static std::unique_ptr<DesktopCapturer> CreateScreenCapturer( |
+ const DesktopCaptureOptions& options); |
+ |
+ protected: |
+ // CroppingWindowCapturer needs to create raw capturers without wrappers, so |
+ // the following two functions are protected. |
+ |
+ // Creates a platform specific DesktopCapturer instance which targets to |
+ // capture windows. |
+ static std::unique_ptr<DesktopCapturer> CreateRawWindowCapturer( |
+ const DesktopCaptureOptions& options); |
+ |
+ // Creates a platform specific DesktopCapturer instance which targets to |
+ // capture screens. |
+ static std::unique_ptr<DesktopCapturer> CreateRawScreenCapturer( |
+ const DesktopCaptureOptions& options); |
}; |
} // namespace webrtc |