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

#include <ICOImageDecoder.h>

Inheritance diagram for WebCore::ICOImageDecoder:
WebCore::ImageDecoder

Public Member Functions

 ICOImageDecoder (AlphaOption, GammaAndColorProfileOption)
 
virtual ~ICOImageDecoder ()
 
String filenameExtension () const override
 
void setData (SharedBuffer &, bool allDataReceived) override
 
bool isSizeAvailable () override
 
IntSize size () override
 
IntSize frameSizeAtIndex (size_t, SubsamplingLevel) override
 
bool setSize (const IntSize &) override
 
size_t frameCount () const override
 
ImageFrameframeBufferAtIndex (size_t) override
 
bool setFailed () override
 
std::optional< IntPointhotSpot () const override
 
- Public Member Functions inherited from WebCore::ImageDecoder
 ImageDecoder (AlphaOption, GammaAndColorProfileOption)
 
bool isSizeAvailable () const
 
size_t frameCount () const
 
RepetitionCount repetitionCount () const
 
String filenameExtension () const
 
std::optional< IntPointhotSpot () const
 
IntSize frameSizeAtIndex (size_t, SubsamplingLevel=SubsamplingLevel::Default) const
 
bool frameIsCompleteAtIndex (size_t) const
 
ImageOrientation frameOrientationAtIndex (size_t) const
 
float frameDurationAtIndex (size_t) const
 
bool frameHasAlphaAtIndex (size_t) const
 
bool frameAllowSubsamplingAtIndex (size_t) const
 
unsigned frameBytesAtIndex (size_t, SubsamplingLevel=SubsamplingLevel::Default) const
 
NativeImagePtr createFrameImageAtIndex (size_t, SubsamplingLevel=SubsamplingLevel::Default, DecodingMode=DecodingMode::OnDemand) const
 
void setData (SharedBuffer &, bool allDataReceived)
 
bool isAllDataReceived () const
 
void clearFrameBufferCache (size_t)
 
 ImageDecoder ()
 
String filenameExtension () const
 
bool isSizeAvailable () const
 
IntSize size () const
 
size_t frameCount () const
 
RepetitionCount repetitionCount () const
 
std::optional< IntPointhotSpot () const
 
IntSize frameSizeAtIndex (size_t, SubsamplingLevel=SubsamplingLevel::Default) const
 
bool frameIsCompleteAtIndex (size_t) const
 
ImageOrientation frameOrientationAtIndex (size_t) const
 
float frameDurationAtIndex (size_t) const
 
bool frameHasAlphaAtIndex (size_t) const
 
bool frameAllowSubsamplingAtIndex (size_t) const
 
unsigned frameBytesAtIndex (size_t, SubsamplingLevel=SubsamplingLevel::Default) const
 
NativeImagePtr createFrameImageAtIndex (size_t, SubsamplingLevel=SubsamplingLevel::Default, DecodingMode=DecodingMode::OnDemand) const
 
void setData (SharedBuffer &, bool allDataReceived)
 
bool isAllDataReceived () const
 
void clearFrameBufferCache (size_t)
 
void setTargetContext (ID2D1RenderTarget *)
 
 ImageDecoder (AlphaOption alphaOption, GammaAndColorProfileOption gammaAndColorProfileOption)
 
virtual ~ImageDecoder ()
 
bool premultiplyAlpha () const
 
bool isAllDataReceived () const
 
IntSize scaledSize ()
 
virtual RepetitionCount repetitionCount () const
 
bool frameIsCompleteAtIndex (size_t)
 
bool frameHasAlphaAtIndex (size_t) const
 
unsigned frameBytesAtIndex (size_t) const
 
float frameDurationAtIndex (size_t)
 
NativeImagePtr createFrameImageAtIndex (size_t, SubsamplingLevel=SubsamplingLevel::Default, DecodingMode=DecodingMode::OnDemand)
 
void setIgnoreGammaAndColorProfile (bool flag)
 
bool ignoresGammaAndColorProfile () const
 
ImageOrientation frameOrientationAtIndex (size_t) const
 
bool frameAllowSubsamplingAtIndex (size_t) const
 
bool failed () const
 
virtual void clearFrameBufferCache (size_t)
 

Additional Inherited Members

- Public Types inherited from WebCore::ImageDecoder
enum  { iccColorProfileHeaderLength = 128 }
 
- Static Public Member Functions inherited from WebCore::ImageDecoder
static std::unique_ptr< ImageDecodercreate (const SharedBuffer &, AlphaOption alphaOption, GammaAndColorProfileOption gammaAndColorProfileOption)
 
static size_t bytesDecodedToDetermineProperties ()
 
static std::unique_ptr< ImageDecodercreate (const SharedBuffer &, AlphaOption, GammaAndColorProfileOption)
 
static size_t bytesDecodedToDetermineProperties ()
 
static IWICImagingFactory * systemImagingFactory ()
 
static std::unique_ptr< ImageDecodercreate (const SharedBuffer &data, AlphaOption, GammaAndColorProfileOption)
 
static bool rgbColorProfile (const char *profileData, unsigned profileLength)
 
static size_t bytesDecodedToDetermineProperties ()
 
static SubsamplingLevel subsamplingLevelForScale (float, SubsamplingLevel)
 
static bool inputDeviceColorProfile (const char *profileData, unsigned profileLength)
 
- Protected Member Functions inherited from WebCore::ImageDecoder
void prepareScaleDataIfNecessary ()
 
int upperBoundScaledX (int origX, int searchStart=0)
 
int lowerBoundScaledX (int origX, int searchStart=0)
 
int upperBoundScaledY (int origY, int searchStart=0)
 
int lowerBoundScaledY (int origY, int searchStart=0)
 
int scaledY (int origY, int searchStart=0)
 
- Protected Attributes inherited from WebCore::ImageDecoder
bool m_isAllDataReceived { false }
 
RetainPtr< CGImageSourceRefm_nativeDecoder
 
IntSize m_size
 
COMPtr< IWICBitmapDecoder > m_nativeDecoder
 
COMPtr< ID2D1RenderTarget > m_renderTarget
 
RefPtr< SharedBufferm_data
 
Vector< ImageFrame, 1 > m_frameBufferCache
 
bool m_scaled { false }
 
Vector< int > m_scaledColumns
 
Vector< int > m_scaledRows
 
bool m_premultiplyAlpha
 
bool m_ignoreGammaAndColorProfile
 
ImageOrientation m_orientation
 

Constructor & Destructor Documentation

◆ ICOImageDecoder()

WebCore::ICOImageDecoder::ICOImageDecoder ( AlphaOption  alphaOption,
GammaAndColorProfileOption  gammaAndColorProfileOption 
)

◆ ~ICOImageDecoder()

WebCore::ICOImageDecoder::~ICOImageDecoder ( )
virtual

Member Function Documentation

◆ filenameExtension()

String WebCore::ICOImageDecoder::filenameExtension ( ) const
inlineoverridevirtual

Implements WebCore::ImageDecoder.

◆ frameBufferAtIndex()

ImageFrame * WebCore::ICOImageDecoder::frameBufferAtIndex ( size_t  index)
overridevirtual

Implements WebCore::ImageDecoder.

◆ frameCount()

size_t WebCore::ICOImageDecoder::frameCount ( ) const
overridevirtual

Reimplemented from WebCore::ImageDecoder.

◆ frameSizeAtIndex()

IntSize WebCore::ICOImageDecoder::frameSizeAtIndex ( size_t  index,
SubsamplingLevel   
)
overridevirtual

Reimplemented from WebCore::ImageDecoder.

◆ hotSpot()

std::optional< IntPoint > WebCore::ICOImageDecoder::hotSpot ( ) const
overridevirtual

Reimplemented from WebCore::ImageDecoder.

◆ isSizeAvailable()

bool WebCore::ICOImageDecoder::isSizeAvailable ( )
overridevirtual

Reimplemented from WebCore::ImageDecoder.

◆ setData()

void WebCore::ICOImageDecoder::setData ( SharedBuffer data,
bool  allDataReceived 
)
overridevirtual

Reimplemented from WebCore::ImageDecoder.

◆ setFailed()

bool WebCore::ICOImageDecoder::setFailed ( )
overridevirtual

Reimplemented from WebCore::ImageDecoder.

◆ setSize()

bool WebCore::ICOImageDecoder::setSize ( const IntSize size)
overridevirtual

Reimplemented from WebCore::ImageDecoder.

◆ size()

IntSize WebCore::ICOImageDecoder::size ( )
overridevirtual

Reimplemented from WebCore::ImageDecoder.


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