5#ifndef FLUTTER_DISPLAY_LIST_IMAGE_DL_IMAGE_H_
6#define FLUTTER_DISPLAY_LIST_IMAGE_DL_IMAGE_H_
15#include "third_party/skia/include/core/SkImage.h"
16#include "third_party/skia/include/core/SkRefCnt.h"
37 static sk_sp<DlImage>
Make(
const SkImage*
image);
39 static sk_sp<DlImage>
Make(sk_sp<SkImage>
image);
121 virtual std::optional<std::string>
get_error()
const;
123#if FML_OS_IOS_SIMULATOR
124 virtual bool IsFakeImage()
const {
return false; }
140 bool Equals(
const sk_sp<const DlImage>& other)
const {
141 return Equals(other.get());
Represents an image whose allocation is (usually) resident on device memory.
bool Equals(const DlImage &other) const
virtual size_t GetApproximateByteSize() const =0
bool Equals(const sk_sp< const DlImage > &other) const
virtual DlISize GetSize() const =0
virtual bool isTextureBacked() const =0
virtual std::optional< std::string > get_error() const
DlIRect GetBounds() const
virtual bool isOpaque() const =0
If the pixel format of this image ignores alpha, this returns true. This method might conservatively ...
static sk_sp< DlImage > Make(const SkImage *image)
virtual std::shared_ptr< impeller::Texture > impeller_texture() const =0
If this display list image is meant to be used by the Impeller backend, an Impeller texture instance....
bool Equals(const DlImage *other) const
virtual OwningContext owning_context() const
virtual bool isUIThreadSafe() const =0
If the underlying platform image held by this object has no threading requirements for the release of...
virtual sk_sp< SkImage > skia_image() const =0
If this display list image is meant to be used by the Skia backend, an SkImage instance....
FlutterVulkanImage * image