#include "components/viz/service/display_embedder/skia_output_device_offscreen.h"
#include <utility>
#include "components/viz/common/resources/shared_image_format_utils.h"
#include "gpu/command_buffer/service/service_utils.h"
#include "gpu/command_buffer/service/shared_image/shared_image_format_service_utils.h"
#include "gpu/command_buffer/service/skia_utils.h"
#include "third_party/skia/include/core/SkSurface.h"
#include "third_party/skia/include/gpu/GpuTypes.h"
#include "third_party/skia/include/gpu/ganesh/SkSurfaceGanesh.h"
#include "third_party/skia/include/gpu/ganesh/gl/GrGLBackendSurface.h"
#include "third_party/skia/include/gpu/ganesh/vk/GrVkBackendSurface.h"
#include "third_party/skia/include/gpu/graphite/Context.h"
#include "third_party/skia/include/gpu/graphite/Surface.h"
#include "third_party/skia/include/gpu/graphite/TextureInfo.h"
namespace viz {
SkiaOutputDeviceOffscreen::SkiaOutputDeviceOffscreen(
scoped_refptr<gpu::SharedContextState> context_state,
gfx::SurfaceOrigin origin,
bool has_alpha,
gpu::MemoryTracker* memory_tracker,
DidSwapBufferCompleteCallback did_swap_buffer_complete_callback)
: … { … }
SkiaOutputDeviceOffscreen::~SkiaOutputDeviceOffscreen() { … }
bool SkiaOutputDeviceOffscreen::Reshape(const ReshapeParams& params) { … }
void SkiaOutputDeviceOffscreen::Present(
const std::optional<gfx::Rect>& update_rect,
BufferPresentedCallback feedback,
OutputSurfaceFrame frame) { … }
void SkiaOutputDeviceOffscreen::EnsureBackbuffer() { … }
void SkiaOutputDeviceOffscreen::DiscardBackbuffer() { … }
SkSurface* SkiaOutputDeviceOffscreen::BeginPaint(
std::vector<GrBackendSemaphore>* end_semaphores) { … }
void SkiaOutputDeviceOffscreen::EndPaint() { … }
}