webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Types | Public Member Functions | Friends | List of all members
WebCore::CachedImage Class Referencefinal

#include <CachedImage.h>

Inheritance diagram for WebCore::CachedImage:
WebCore::CachedResource WebCore::CachedResource

Public Types

enum  SizeType { UsedSize, IntrinsicSize, UsedSize, IntrinsicSize }
 
enum  SizeType { UsedSize, IntrinsicSize, UsedSize, IntrinsicSize }
 
- Public Types inherited from WebCore::CachedResource
enum  Type {
  MainResource, ImageResource, CSSStyleSheet, Script,
  FontResource, MediaResource, RawResource, SVGDocumentResource,
  MainResource, ImageResource, CSSStyleSheet, Script,
  FontResource, MediaResource, RawResource, SVGDocumentResource
}
 
enum  Status {
  Unknown, Pending, Cached, LoadError,
  DecodeError, Unknown, Pending, Cached,
  LoadError, DecodeError
}
 
enum  PreloadResult {
  PreloadNotReferenced, PreloadReferenced, PreloadReferencedWhileLoading, PreloadReferencedWhileComplete,
  PreloadNotReferenced, PreloadReferenced, PreloadReferencedWhileLoading, PreloadReferencedWhileComplete
}
 
enum  RevalidationDecision {
  RevalidationDecision::No, RevalidationDecision::YesDueToCachePolicy, RevalidationDecision::YesDueToNoStore, RevalidationDecision::YesDueToNoCache,
  RevalidationDecision::YesDueToExpired, RevalidationDecision::No, RevalidationDecision::YesDueToCachePolicy, RevalidationDecision::YesDueToNoStore,
  RevalidationDecision::YesDueToNoCache, RevalidationDecision::YesDueToExpired
}
 
enum  Type {
  MainResource, ImageResource, CSSStyleSheet, Script,
  FontResource, MediaResource, RawResource, SVGDocumentResource,
  MainResource, ImageResource, CSSStyleSheet, Script,
  FontResource, MediaResource, RawResource, SVGDocumentResource
}
 
enum  Status {
  Unknown, Pending, Cached, LoadError,
  DecodeError, Unknown, Pending, Cached,
  LoadError, DecodeError
}
 
enum  PreloadResult {
  PreloadNotReferenced, PreloadReferenced, PreloadReferencedWhileLoading, PreloadReferencedWhileComplete,
  PreloadNotReferenced, PreloadReferenced, PreloadReferencedWhileLoading, PreloadReferencedWhileComplete
}
 
enum  RevalidationDecision {
  RevalidationDecision::No, RevalidationDecision::YesDueToCachePolicy, RevalidationDecision::YesDueToNoStore, RevalidationDecision::YesDueToNoCache,
  RevalidationDecision::YesDueToExpired, RevalidationDecision::No, RevalidationDecision::YesDueToCachePolicy, RevalidationDecision::YesDueToNoStore,
  RevalidationDecision::YesDueToNoCache, RevalidationDecision::YesDueToExpired
}
 

Public Member Functions

 CachedImage (CachedResourceRequest &&, SessionID)
 
 CachedImage (Image *, SessionID)
 
 CachedImage (const URL &, Image *, SessionID)
 
virtual ~CachedImage ()
 
WEBCORE_EXPORT Imageimage ()
 
WEBCORE_EXPORT ImageimageForRenderer (const RenderObject *)
 
bool hasImage () const
 
bool currentFrameKnownToBeOpaque (const RenderElement *)
 
std::pair< Image *, float > brokenImage (float deviceScaleFactor) const
 
bool willPaintBrokenImage () const
 
bool canRender (const RenderElement *renderer, float multiplier)
 
void setContainerSizeForRenderer (const CachedImageClient *, const LayoutSize &, float)
 
bool usesImageContainerSize () const
 
bool imageHasRelativeWidth () const
 
bool imageHasRelativeHeight () const
 
void addDataBuffer (SharedBuffer &) override
 
void finishLoading (SharedBuffer *) override
 
LayoutSize imageSizeForRenderer (const RenderElement *, float multiplier, SizeType=UsedSize)
 
void computeIntrinsicDimensions (Length &intrinsicWidth, Length &intrinsicHeight, FloatSize &intrinsicRatio)
 
bool isManuallyCached () const
 
RevalidationDecision makeRevalidationDecision (CachePolicy) const override
 
void load (CachedResourceLoader &) override
 
bool isOriginClean (SecurityOrigin *)
 
 CachedImage (CachedResourceRequest &&, SessionID)
 
 CachedImage (Image *, SessionID)
 
 CachedImage (const URL &, Image *, SessionID)
 
virtual ~CachedImage ()
 
WEBCORE_EXPORT Imageimage ()
 
WEBCORE_EXPORT ImageimageForRenderer (const RenderObject *)
 
bool hasImage () const
 
bool currentFrameKnownToBeOpaque (const RenderElement *)
 
std::pair< Image *, float > brokenImage (float deviceScaleFactor) const
 
bool willPaintBrokenImage () const
 
bool canRender (const RenderElement *renderer, float multiplier)
 
void setContainerSizeForRenderer (const CachedImageClient *, const LayoutSize &, float)
 
bool usesImageContainerSize () const
 
bool imageHasRelativeWidth () const
 
bool imageHasRelativeHeight () const
 
void addDataBuffer (SharedBuffer &) override
 
void finishLoading (SharedBuffer *) override
 
LayoutSize imageSizeForRenderer (const RenderElement *, float multiplier, SizeType=UsedSize)
 
void computeIntrinsicDimensions (Length &intrinsicWidth, Length &intrinsicHeight, FloatSize &intrinsicRatio)
 
bool isManuallyCached () const
 
RevalidationDecision makeRevalidationDecision (CachePolicy) const override
 
void load (CachedResourceLoader &) override
 
bool isOriginClean (SecurityOrigin *)
 
- Public Member Functions inherited from WebCore::CachedResource
 CachedResource (CachedResourceRequest &&, Type, SessionID)
 
virtual ~CachedResource ()
 
virtual void setEncoding (const String &)
 
virtual String encoding () const
 
virtual const TextResourceDecodertextResourceDecoder () const
 
void setResourceError (const ResourceError &error)
 
const ResourceErrorresourceError () const
 
const ResourceRequestresourceRequest () const
 
ResourceRequestresourceRequest ()
 
const URLurl () const
 
const StringcachePartition () const
 
SessionID sessionID () const
 
Type type () const
 
ResourceLoadPriority loadPriority () const
 
void setLoadPriority (const std::optional< ResourceLoadPriority > &)
 
WEBCORE_EXPORT void addClient (CachedResourceClient &)
 
WEBCORE_EXPORT void removeClient (CachedResourceClient &)
 
bool hasClients () const
 
bool hasClient (CachedResourceClient &client)
 
bool deleteIfPossible ()
 
PreloadResult preloadResult () const
 
void destroyDecodedDataIfNeeded ()
 
unsigned count () const
 
Status status () const
 
void setStatus (Status status)
 
unsigned size () const
 
unsigned encodedSize () const
 
unsigned decodedSize () const
 
unsigned overheadSize () const
 
bool isLoaded () const
 
bool isLoading () const
 
void setLoading (bool b)
 
SubresourceLoaderloader ()
 
bool areAllClientsXMLHttpRequests () const
 
bool isImage () const
 
bool isMainOrMediaOrRawResource () const
 
bool ignoreForRequestCount () const
 
unsigned accessCount () const
 
void increaseAccessCount ()
 
void finish ()
 
void setInCache (bool inCache)
 
bool inCache () const
 
void clearLoader ()
 
SharedBufferresourceBuffer () const
 
virtual void redirectReceived (ResourceRequest &, const ResourceResponse &)
 
virtual bool shouldCacheResponse (const ResourceResponse &)
 
void setResponse (const ResourceResponse &)
 
const ResourceResponseresponse () const
 
void setCrossOrigin ()
 
bool isCrossOrigin () const
 
bool isCORSSameOrigin () const
 
ResourceResponse::Tainting responseTainting () const
 
void loadFrom (const CachedResource &)
 
SecurityOriginorigin () const
 
AtomicString initiatorName () const
 
bool canDelete () const
 
bool hasOneHandle () const
 
bool isExpired () const
 
void cancelLoad ()
 
bool wasCanceled () const
 
bool errorOccurred () const
 
bool loadFailedOrCanceled () const
 
bool shouldSendResourceLoadCallbacks () const
 
DataBufferingPolicy dataBufferingPolicy () const
 
bool allowsCaching () const
 
const FetchOptionsoptions () const
 
void setOwningCachedResourceLoader (CachedResourceLoader *cachedResourceLoader)
 
bool isPreloaded () const
 
void increasePreloadCount ()
 
void decreasePreloadCount ()
 
bool isLinkPreload ()
 
void setLinkPreload ()
 
void registerHandle (CachedResourceHandleBase *)
 
WEBCORE_EXPORT void unregisterHandle (CachedResourceHandleBase *)
 
bool canUseCacheValidator () const
 
bool redirectChainAllowsReuse (ReuseExpiredRedirectionOrNot) const
 
bool hasRedirections () const
 
bool varyHeaderValuesMatch (const ResourceRequest &)
 
bool isCacheValidator () const
 
CachedResourceresourceToRevalidate () const
 
void setResourceToRevalidate (CachedResource *)
 
void clearResourceToRevalidate ()
 
void updateResponseAfterRevalidation (const ResourceResponse &validatingResponse)
 
bool validationInProgress () const
 
bool validationCompleting () const
 
virtual void didSendData (unsigned long long, unsigned long long)
 
virtual void didRetrieveDerivedDataFromCache (const String &, SharedBuffer &)
 
unsigned long identifierForLoadWithoutResourceLoader () const
 
 CachedResource (CachedResourceRequest &&, Type, SessionID)
 
virtual ~CachedResource ()
 
virtual void setEncoding (const String &)
 
virtual String encoding () const
 
virtual const TextResourceDecodertextResourceDecoder () const
 
void setResourceError (const ResourceError &error)
 
const ResourceErrorresourceError () const
 
const ResourceRequestresourceRequest () const
 
ResourceRequestresourceRequest ()
 
const URLurl () const
 
const StringcachePartition () const
 
SessionID sessionID () const
 
Type type () const
 
ResourceLoadPriority loadPriority () const
 
void setLoadPriority (const std::optional< ResourceLoadPriority > &)
 
WEBCORE_EXPORT void addClient (CachedResourceClient &)
 
WEBCORE_EXPORT void removeClient (CachedResourceClient &)
 
bool hasClients () const
 
bool hasClient (CachedResourceClient &client)
 
bool deleteIfPossible ()
 
PreloadResult preloadResult () const
 
void destroyDecodedDataIfNeeded ()
 
unsigned count () const
 
Status status () const
 
void setStatus (Status status)
 
unsigned size () const
 
unsigned encodedSize () const
 
unsigned decodedSize () const
 
unsigned overheadSize () const
 
bool isLoaded () const
 
bool isLoading () const
 
void setLoading (bool b)
 
SubresourceLoaderloader ()
 
bool areAllClientsXMLHttpRequests () const
 
bool isImage () const
 
bool isMainOrMediaOrRawResource () const
 
bool ignoreForRequestCount () const
 
unsigned accessCount () const
 
void increaseAccessCount ()
 
void finish ()
 
void setInCache (bool inCache)
 
bool inCache () const
 
void clearLoader ()
 
SharedBufferresourceBuffer () const
 
virtual void redirectReceived (ResourceRequest &, const ResourceResponse &)
 
virtual bool shouldCacheResponse (const ResourceResponse &)
 
void setResponse (const ResourceResponse &)
 
const ResourceResponseresponse () const
 
void setCrossOrigin ()
 
bool isCrossOrigin () const
 
bool isCORSSameOrigin () const
 
ResourceResponse::Tainting responseTainting () const
 
void loadFrom (const CachedResource &)
 
SecurityOriginorigin () const
 
AtomicString initiatorName () const
 
bool canDelete () const
 
bool hasOneHandle () const
 
bool isExpired () const
 
void cancelLoad ()
 
bool wasCanceled () const
 
bool errorOccurred () const
 
bool loadFailedOrCanceled () const
 
bool shouldSendResourceLoadCallbacks () const
 
DataBufferingPolicy dataBufferingPolicy () const
 
bool allowsCaching () const
 
const FetchOptionsoptions () const
 
void setOwningCachedResourceLoader (CachedResourceLoader *cachedResourceLoader)
 
bool isPreloaded () const
 
void increasePreloadCount ()
 
void decreasePreloadCount ()
 
bool isLinkPreload ()
 
void setLinkPreload ()
 
void registerHandle (CachedResourceHandleBase *)
 
WEBCORE_EXPORT void unregisterHandle (CachedResourceHandleBase *)
 
bool canUseCacheValidator () const
 
bool redirectChainAllowsReuse (ReuseExpiredRedirectionOrNot) const
 
bool hasRedirections () const
 
bool varyHeaderValuesMatch (const ResourceRequest &)
 
bool isCacheValidator () const
 
CachedResourceresourceToRevalidate () const
 
void setResourceToRevalidate (CachedResource *)
 
void clearResourceToRevalidate ()
 
void updateResponseAfterRevalidation (const ResourceResponse &validatingResponse)
 
bool validationInProgress () const
 
bool validationCompleting () const
 
virtual void didSendData (unsigned long long, unsigned long long)
 
virtual void didRetrieveDerivedDataFromCache (const String &, SharedBuffer &)
 
unsigned long identifierForLoadWithoutResourceLoader () const
 

Friends

class MemoryCache
 

Additional Inherited Members

- Static Public Member Functions inherited from WebCore::CachedResource
static ResourceLoadPriority defaultPriorityForResourceType (Type)
 
static ResourceLoadPriority defaultPriorityForResourceType (Type)
 
- Protected Member Functions inherited from WebCore::CachedResource
 CachedResource (const URL &, Type, SessionID)
 
void setEncodedSize (unsigned)
 
void setDecodedSize (unsigned)
 
void didAccessDecodedData (double timeStamp)
 
 CachedResource (const URL &, Type, SessionID)
 
void setEncodedSize (unsigned)
 
void setDecodedSize (unsigned)
 
void didAccessDecodedData (double timeStamp)
 
- Protected Attributes inherited from WebCore::CachedResource
HashCountedSet< CachedResourceClient * > m_clients
 
ResourceRequest m_resourceRequest
 
RefPtr< SubresourceLoaderm_loader
 
ResourceLoaderOptions m_options
 
ResourceResponse m_response
 
ResourceResponse::Tainting m_responseTainting { ResourceResponse::Tainting::Basic }
 
RefPtr< SharedBufferm_data
 
DeferrableOneShotTimer m_decodedDataDeletionTimer
 

Member Enumeration Documentation

◆ SizeType [1/2]

Enumerator
UsedSize 
IntrinsicSize 
UsedSize 
IntrinsicSize 

◆ SizeType [2/2]

Enumerator
UsedSize 
IntrinsicSize 
UsedSize 
IntrinsicSize 

Constructor & Destructor Documentation

◆ CachedImage() [1/6]

WebCore::CachedImage::CachedImage ( CachedResourceRequest &&  request,
SessionID  sessionID 
)

◆ CachedImage() [2/6]

WebCore::CachedImage::CachedImage ( Image image,
SessionID  sessionID 
)

◆ CachedImage() [3/6]

WebCore::CachedImage::CachedImage ( const URL url,
Image image,
SessionID  sessionID 
)

◆ ~CachedImage() [1/2]

WebCore::CachedImage::~CachedImage ( )
virtual

◆ CachedImage() [4/6]

WebCore::CachedImage::CachedImage ( CachedResourceRequest &&  ,
SessionID   
)

◆ CachedImage() [5/6]

WebCore::CachedImage::CachedImage ( Image ,
SessionID   
)

◆ CachedImage() [6/6]

WebCore::CachedImage::CachedImage ( const URL ,
Image ,
SessionID   
)

◆ ~CachedImage() [2/2]

virtual WebCore::CachedImage::~CachedImage ( )
virtual

Member Function Documentation

◆ addDataBuffer() [1/2]

void WebCore::CachedImage::addDataBuffer ( SharedBuffer data)
overridevirtual

Reimplemented from WebCore::CachedResource.

◆ addDataBuffer() [2/2]

void WebCore::CachedImage::addDataBuffer ( SharedBuffer )
overridevirtual

Reimplemented from WebCore::CachedResource.

◆ brokenImage() [1/2]

std::pair<Image*, float> WebCore::CachedImage::brokenImage ( float  deviceScaleFactor) const

◆ brokenImage() [2/2]

std::pair< Image *, float > WebCore::CachedImage::brokenImage ( float  deviceScaleFactor) const

◆ canRender() [1/2]

bool WebCore::CachedImage::canRender ( const RenderElement renderer,
float  multiplier 
)
inline

◆ canRender() [2/2]

bool WebCore::CachedImage::canRender ( const RenderElement renderer,
float  multiplier 
)
inline

◆ computeIntrinsicDimensions() [1/2]

void WebCore::CachedImage::computeIntrinsicDimensions ( Length intrinsicWidth,
Length intrinsicHeight,
FloatSize intrinsicRatio 
)

◆ computeIntrinsicDimensions() [2/2]

void WebCore::CachedImage::computeIntrinsicDimensions ( Length intrinsicWidth,
Length intrinsicHeight,
FloatSize intrinsicRatio 
)

◆ currentFrameKnownToBeOpaque() [1/2]

bool WebCore::CachedImage::currentFrameKnownToBeOpaque ( const RenderElement renderer)

◆ currentFrameKnownToBeOpaque() [2/2]

bool WebCore::CachedImage::currentFrameKnownToBeOpaque ( const RenderElement )

◆ finishLoading() [1/2]

void WebCore::CachedImage::finishLoading ( SharedBuffer )
overridevirtual

Reimplemented from WebCore::CachedResource.

◆ finishLoading() [2/2]

void WebCore::CachedImage::finishLoading ( SharedBuffer data)
overridevirtual

Reimplemented from WebCore::CachedResource.

◆ hasImage() [1/2]

bool WebCore::CachedImage::hasImage ( ) const
inline

◆ hasImage() [2/2]

bool WebCore::CachedImage::hasImage ( ) const
inline

◆ image() [1/2]

WEBCORE_EXPORT Image* WebCore::CachedImage::image ( )

◆ image() [2/2]

Image * WebCore::CachedImage::image ( )

◆ imageForRenderer() [1/2]

Image * WebCore::CachedImage::imageForRenderer ( const RenderObject renderer)

◆ imageForRenderer() [2/2]

WEBCORE_EXPORT Image* WebCore::CachedImage::imageForRenderer ( const RenderObject )

◆ imageHasRelativeHeight() [1/2]

bool WebCore::CachedImage::imageHasRelativeHeight ( ) const

◆ imageHasRelativeHeight() [2/2]

bool WebCore::CachedImage::imageHasRelativeHeight ( ) const

◆ imageHasRelativeWidth() [1/2]

bool WebCore::CachedImage::imageHasRelativeWidth ( ) const

◆ imageHasRelativeWidth() [2/2]

bool WebCore::CachedImage::imageHasRelativeWidth ( ) const

◆ imageSizeForRenderer() [1/2]

LayoutSize WebCore::CachedImage::imageSizeForRenderer ( const RenderElement ,
float  multiplier,
SizeType  = UsedSize 
)

◆ imageSizeForRenderer() [2/2]

LayoutSize WebCore::CachedImage::imageSizeForRenderer ( const RenderElement renderer,
float  multiplier,
SizeType  sizeType = UsedSize 
)

◆ isManuallyCached() [1/2]

bool WebCore::CachedImage::isManuallyCached ( ) const
inline

◆ isManuallyCached() [2/2]

bool WebCore::CachedImage::isManuallyCached ( ) const
inline

◆ isOriginClean() [1/2]

bool WebCore::CachedImage::isOriginClean ( SecurityOrigin )

◆ isOriginClean() [2/2]

bool WebCore::CachedImage::isOriginClean ( SecurityOrigin origin)

◆ load() [1/2]

void WebCore::CachedImage::load ( CachedResourceLoader )
overridevirtual

Reimplemented from WebCore::CachedResource.

◆ load() [2/2]

void WebCore::CachedImage::load ( CachedResourceLoader loader)
overridevirtual

Reimplemented from WebCore::CachedResource.

◆ makeRevalidationDecision() [1/2]

CachedResource::RevalidationDecision WebCore::CachedImage::makeRevalidationDecision ( CachePolicy  cachePolicy) const
overridevirtual

Reimplemented from WebCore::CachedResource.

◆ makeRevalidationDecision() [2/2]

RevalidationDecision WebCore::CachedImage::makeRevalidationDecision ( CachePolicy  ) const
overridevirtual

Reimplemented from WebCore::CachedResource.

◆ setContainerSizeForRenderer() [1/2]

void WebCore::CachedImage::setContainerSizeForRenderer ( const CachedImageClient renderer,
const LayoutSize containerSize,
float  containerZoom 
)

◆ setContainerSizeForRenderer() [2/2]

void WebCore::CachedImage::setContainerSizeForRenderer ( const CachedImageClient ,
const LayoutSize ,
float   
)

◆ usesImageContainerSize() [1/2]

bool WebCore::CachedImage::usesImageContainerSize ( ) const

◆ usesImageContainerSize() [2/2]

bool WebCore::CachedImage::usesImageContainerSize ( ) const

◆ willPaintBrokenImage() [1/2]

bool WebCore::CachedImage::willPaintBrokenImage ( ) const

◆ willPaintBrokenImage() [2/2]

bool WebCore::CachedImage::willPaintBrokenImage ( ) const

Friends And Related Function Documentation

◆ MemoryCache

MemoryCache
friend

The documentation for this class was generated from the following files: