#include "gpu/ipc/gpu_in_process_thread_service.h"
#include <utility>
#include <vector>
#include "base/notreached.h"
#include "base/task/single_thread_task_runner.h"
#include "gpu/command_buffer/service/scheduler.h"
#include "gpu/command_buffer/service/scheduler_sequence.h"
namespace gpu {
GpuInProcessThreadServiceDelegate::GpuInProcessThreadServiceDelegate() =
default;
GpuInProcessThreadServiceDelegate::~GpuInProcessThreadServiceDelegate() =
default;
GpuInProcessThreadService::GpuInProcessThreadService(
GpuInProcessThreadServiceDelegate* delegate,
scoped_refptr<base::SingleThreadTaskRunner> task_runner,
Scheduler* scheduler,
SyncPointManager* sync_point_manager,
gl::GLSurfaceFormat share_group_surface_format,
const GpuFeatureInfo& gpu_feature_info,
const GpuPreferences& gpu_preferences,
SharedImageManager* shared_image_manager,
gles2::ProgramCache* program_cache)
: … { … }
GpuInProcessThreadService::~GpuInProcessThreadService() = default;
bool GpuInProcessThreadService::ForceVirtualizedGLContexts() const { … }
bool GpuInProcessThreadService::ShouldCreateMemoryTracker() const { … }
std::unique_ptr<SingleTaskSequence>
GpuInProcessThreadService::CreateSequence() { … }
void GpuInProcessThreadService::ScheduleOutOfOrderTask(base::OnceClosure task) { … }
void GpuInProcessThreadService::ScheduleDelayedWork(base::OnceClosure task) { … }
void GpuInProcessThreadService::PostNonNestableToClient(
base::OnceClosure callback) { … }
scoped_refptr<SharedContextState>
GpuInProcessThreadService::GetSharedContextState() { … }
scoped_refptr<gl::GLShareGroup> GpuInProcessThreadService::GetShareGroup() { … }
}