chromium/third_party/blink/renderer/platform/peerconnection/vsync_provider.cc

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "third_party/blink/renderer/platform/peerconnection/vsync_provider.h"
#include <memory>

#include "base/logging.h"
#include "base/memory/weak_ptr.h"
#include "base/task/sequenced_task_runner.h"
#include "third_party/blink/renderer/platform/graphics/video_frame_sink_bundle.h"

namespace blink {

// This class provides a VideoFrameSinkBundle BeginFrameObserver
// implementation which gives access to VSyncs and VSyncs enabled signals.
// After construction, this class can only be operated on the video frame
// compositor thread.
class VSyncProviderImpl::BeginFrameObserver
    : public VideoFrameSinkBundle::BeginFrameObserver {};

VSyncProviderImpl::VSyncProviderImpl(
    scoped_refptr<base::SequencedTaskRunner> task_runner,
    uint32_t frame_sink_client_id)
    :{}

void VSyncProviderImpl::SetVSyncCallback(base::OnceClosure callback) {}

void VSyncProviderImpl::Initialize(
    base::RepeatingCallback<void(bool /*visible*/)> vsync_enabled_callback) {}

}  // namespace blink