#include "cc/paint/discardable_image_map.h"
#include <stddef.h>
#include <algorithm>
#include <limits>
#include "base/auto_reset.h"
#include "base/check.h"
#include "base/containers/adapters.h"
#include "base/memory/stack_allocated.h"
#include "base/metrics/histogram_macros.h"
#include "base/no_destructor.h"
#include "base/sequence_checker.h"
#include "base/trace_event/trace_event.h"
#include "cc/paint/display_item_list.h"
#include "cc/paint/image_provider.h"
#include "cc/paint/paint_filter.h"
#include "cc/paint/paint_op_buffer.h"
#include "cc/paint/paint_op_buffer_iterator.h"
#include "cc/paint/paint_shader.h"
#include "cc/paint/skottie_wrapper.h"
#include "third_party/skia/include/utils/SkNoDrawCanvas.h"
#include "ui/gfx/display_color_spaces.h"
#include "ui/gfx/geometry/rect_conversions.h"
#include "ui/gfx/geometry/skia_conversions.h"
namespace cc {
class DiscardableImageMap::Generator { … };
DiscardableImageMap::DiscardableImageMap() = default;
DiscardableImageMap::~DiscardableImageMap() = default;
scoped_refptr<DiscardableImageMap> DiscardableImageMap::Generate(
const PaintOpBuffer& paint_op_buffer,
const gfx::Rect& bounds,
const ScrollOffsetMap& raster_inducing_scroll_offsets) { … }
base::flat_map<PaintImage::Id, PaintImage::DecodingMode>
DiscardableImageMap::TakeDecodingModeMap() { … }
std::vector<const DrawImage*> DiscardableImageMap::GetDiscardableImagesInRect(
const gfx::Rect& rect) const { … }
const DiscardableImageMap::Rects& DiscardableImageMap::GetRectsForImage(
PaintImage::Id image_id) const { … }
DiscardableImageMap::AnimatedImageMetadata::AnimatedImageMetadata(
PaintImage::Id paint_image_id,
PaintImage::CompletionState completion_state,
std::vector<FrameMetadata> frames,
int repetition_count,
PaintImage::AnimationSequenceId reset_animation_sequence_id)
: … { … }
DiscardableImageMap::AnimatedImageMetadata::~AnimatedImageMetadata() = default;
DiscardableImageMap::AnimatedImageMetadata::AnimatedImageMetadata(
const AnimatedImageMetadata& other) = default;
}