#include "components/viz/service/frame_sinks/eviction_handler.h"
#include <GLES2/gl2.h>
#include <utility>
#include "base/functional/callback_helpers.h"
#include "components/viz/common/features.h"
#include "components/viz/common/quads/solid_color_draw_quad.h"
#include "components/viz/common/quads/texture_draw_quad.h"
#include "components/viz/common/resources/resource_id.h"
#include "components/viz/service/display/display.h"
#include "components/viz/service/frame_sinks/compositor_frame_sink_support.h"
#include "components/viz/service/frame_sinks/frame_sink_manager_impl.h"
#include "ui/gfx/video_types.h"
namespace viz {
EvictionHandler::EvictionHandler(Display* display,
CompositorFrameSinkSupport* support,
ReservedResourceIdTracker* id_tracker)
: … { … }
EvictionHandler::~EvictionHandler() { … }
bool EvictionHandler::WillEvictSurface(const SurfaceId& surface_id) { … }
void EvictionHandler::MaybeFinishEvictionProcess() { … }
void EvictionHandler::DisplayDidDrawAndSwap() { … }
void EvictionHandler::TakeSnapshotForEviction(const SurfaceId& to_evict,
double scale) { … }
void EvictionHandler::SubmitPlaceholderContentForEviction(
SurfaceId to_evict,
int64_t snapshot_seq_id,
std::unique_ptr<CopyOutputResult> copy_result) { … }
void EvictionHandler::ReceiveFromChild(
const std::vector<TransferableResource>& resources) { … }
void EvictionHandler::RefResources(
const std::vector<TransferableResource>& resources) { … }
void EvictionHandler::UnrefResources(
const std::vector<ReturnedResource>& resources) { … }
}