Index: media/capture/content/screen_capture_device_core.h |
diff --git a/media/capture/content/screen_capture_device_core.h b/media/capture/content/screen_capture_device_core.h |
index 3f8884b3c857c8fd9f87fbe21d94a0eb7f1b7ffa..ae305c0e155367961b74a181f8f71458e8b1cfbc 100644 |
--- a/media/capture/content/screen_capture_device_core.h |
+++ b/media/capture/content/screen_capture_device_core.h |
@@ -37,6 +37,10 @@ class CAPTURE_EXPORT VideoCaptureMachine { |
const VideoCaptureParams& params, |
const base::Callback<void(bool)> callback) = 0; |
+ // Suspend/Resume frame delivery. |
+ virtual void Suspend() = 0; |
+ virtual void Resume() = 0; |
+ |
// Stops capturing. |
// |callback| is invoked after the capturing has stopped. |
virtual void Stop(const base::Closure& callback) = 0; |
@@ -82,11 +86,13 @@ class CAPTURE_EXPORT ScreenCaptureDeviceCore |
void AllocateAndStart(const VideoCaptureParams& params, |
std::unique_ptr<VideoCaptureDevice::Client> client); |
void RequestRefreshFrame(); |
+ void Suspend(); |
+ void Resume(); |
void StopAndDeAllocate(); |
private: |
// Flag indicating current state. |
- enum State { kIdle, kCapturing, kError, kLastCaptureState }; |
+ enum State { kIdle, kCapturing, kSuspended, kError, kLastCaptureState }; |
void TransitionStateTo(State next_state); |