desktop_capturer.h 906 B

1234567891011121314151617181920212223242526
  1. // Copyright 2022 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. #ifndef REMOTING_PROTOCOL_DESKTOP_CAPTURER_H_
  5. #define REMOTING_PROTOCOL_DESKTOP_CAPTURER_H_
  6. #include "base/callback.h"
  7. #include "third_party/webrtc/modules/desktop_capture/desktop_capture_metadata.h"
  8. #include "third_party/webrtc/modules/desktop_capture/desktop_capturer.h"
  9. namespace remoting {
  10. // An interface extension to make synchronous methods on webrtc::DesktopCapturer
  11. // asynchronous by allowing the new wrapper methods to accept callbacks.
  12. class DesktopCapturer : public webrtc::DesktopCapturer {
  13. public:
  14. #if defined(WEBRTC_USE_GIO)
  15. virtual void GetMetadataAsync(
  16. base::OnceCallback<void(webrtc::DesktopCaptureMetadata)> callback) {}
  17. #endif
  18. };
  19. } // namespace remoting
  20. #endif // REMOTING_PROTOCOL_DESKTOP_CAPTURER_H_