chromium/media/gpu/chromeos/vda_video_frame_pool.cc

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

#include "media/gpu/chromeos/vda_video_frame_pool.h"

#include "base/functional/bind.h"
#include "base/memory/scoped_refptr.h"
#include "base/synchronization/waitable_event.h"
#include "base/task/sequenced_task_runner.h"
#include "media/gpu/chromeos/gpu_buffer_layout.h"
#include "media/gpu/macros.h"
#include "media/media_buildflags.h"

namespace media {

VdaVideoFramePool::VdaVideoFramePool(
    base::WeakPtr<VdaDelegate> vda,
    scoped_refptr<base::SequencedTaskRunner> vda_task_runner)
    :{}

VdaVideoFramePool::~VdaVideoFramePool() {}

CroStatus::Or<GpuBufferLayout> VdaVideoFramePool::Initialize(
    const Fourcc& fourcc,
    const gfx::Size& coded_size,
    const gfx::Rect& visible_rect,
    const gfx::Size& natural_size,
    size_t max_num_frames,
    bool use_protected,
    bool use_linear_buffers) {}

// static
void VdaVideoFramePool::OnRequestFramesDone(
    base::WaitableEvent* done,
    CroStatus::Or<GpuBufferLayout>* layout,
    CroStatus::Or<GpuBufferLayout> layout_value) {}

// static
void VdaVideoFramePool::ImportFrameThunk(
    scoped_refptr<base::SequencedTaskRunner> task_runner,
    std::optional<base::WeakPtr<VdaVideoFramePool>> weak_this,
    scoped_refptr<FrameResource> frame) {}

void VdaVideoFramePool::ImportFrame(scoped_refptr<FrameResource> frame) {}

scoped_refptr<FrameResource> VdaVideoFramePool::GetFrame() {}

VideoFrame::StorageType VdaVideoFramePool::GetFrameStorageType() const {}

bool VdaVideoFramePool::IsExhausted() {}

void VdaVideoFramePool::NotifyWhenFrameAvailable(base::OnceClosure cb) {}

void VdaVideoFramePool::ReleaseAllFrames() {}

std::optional<GpuBufferLayout> VdaVideoFramePool::GetGpuBufferLayout() {}

void VdaVideoFramePool::CallFrameAvailableCbIfNeeded() {}

}  // namespace media