#include "modules/desktop_capture/fallback_desktop_capturer_wrapper.h"
#include <stddef.h>
#include <utility>
#include "api/sequence_checker.h"
#include "rtc_base/checks.h"
#include "system_wrappers/include/metrics.h"
namespace webrtc {
namespace {
class SharedMemoryFactoryProxy : public SharedMemoryFactory { … };
}
SharedMemoryFactoryProxy::SharedMemoryFactoryProxy(
SharedMemoryFactory* factory) { … }
std::unique_ptr<SharedMemoryFactory> SharedMemoryFactoryProxy::Create(
SharedMemoryFactory* factory) { … }
SharedMemoryFactoryProxy::~SharedMemoryFactoryProxy() = default;
std::unique_ptr<SharedMemory> SharedMemoryFactoryProxy::CreateSharedMemory(
size_t size) { … }
FallbackDesktopCapturerWrapper::FallbackDesktopCapturerWrapper(
std::unique_ptr<DesktopCapturer> main_capturer,
std::unique_ptr<DesktopCapturer> secondary_capturer)
: … { … }
FallbackDesktopCapturerWrapper::~FallbackDesktopCapturerWrapper() = default;
void FallbackDesktopCapturerWrapper::Start(
DesktopCapturer::Callback* callback) { … }
void FallbackDesktopCapturerWrapper::SetSharedMemoryFactory(
std::unique_ptr<SharedMemoryFactory> shared_memory_factory) { … }
void FallbackDesktopCapturerWrapper::CaptureFrame() { … }
void FallbackDesktopCapturerWrapper::SetExcludedWindow(WindowId window) { … }
bool FallbackDesktopCapturerWrapper::GetSourceList(SourceList* sources) { … }
bool FallbackDesktopCapturerWrapper::SelectSource(SourceId id) { … }
bool FallbackDesktopCapturerWrapper::FocusOnSelectedSource() { … }
bool FallbackDesktopCapturerWrapper::IsOccluded(const DesktopVector& pos) { … }
void FallbackDesktopCapturerWrapper::OnCaptureResult(
Result result,
std::unique_ptr<DesktopFrame> frame) { … }
}