skia2/docs/SkImageInfo_Reference.bmh
Cary Clark 2a8c48be4f improve bookmaker defines and references
generating replacement includes exposed
errors mostly dealing with globals like
SkAlphaType and members. Rewrite finding
and resolving links to hopefully make this
area more robust.

TBR=caryclark@google.com
Docs-Preview: https://skia.org/?cl=107160
Bug: skia:6898
Change-Id: I9b8025160203d204286f3f6ca0cebd70da6253b4
Reviewed-on: https://skia-review.googlesource.com/107160
Commit-Queue: Cary Clark <caryclark@skia.org>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-02-16 15:35:36 +00:00

893 lines
16 KiB
Plaintext

#Topic Image_Info
#Alias Image_Info_Reference
#Subtopic Overview
#Subtopic Subtopic
#Populate
##
##
#Subtopic Constant
#Populate
##
# ------------------------------------------------------------------------------
#Subtopic Alpha_Type
#Line # incomplete ##
#Alias Alpha_Type
#Alias Alpha_Types
#Enum SkAlphaType
#Line # incomplete ##
#Code
enum SkAlphaType {
kUnknown_SkAlphaType,
kOpaque_SkAlphaType,
kPremul_SkAlphaType,
kUnpremul_SkAlphaType,
kLastEnum_SkAlphaType = kUnpremul_SkAlphaType,
};
##
Describes how to interpret the alpha component of a pixel.
#Const kUnknown_SkAlphaType 0
##
#Const kOpaque_SkAlphaType 1
All pixels are stored as opaque.
##
#Const kPremul_SkAlphaType 2
All pixels have their alpha premultiplied in their color components.
This is the natural format for the rendering target pixels.
##
#Const kUnpremul_SkAlphaType 3
All pixels have their color components stored without any regard to the
alpha. e.g. this is the default configuration for PNG images.
kUnpremul_SkAlphaType is supported only for input images. Rendering cannot
generate this on output.
##
#Example
// incomplete
##
#SeeAlso incomplete
#Enum SkAlphaType ##
#Subtopic Alpha_Type ##
# ------------------------------------------------------------------------------
#Subtopic Color_Type
#Line # incomplete ##
#Alias Color_Type
#Alias Color_Types
#Subtopic Native
#Alias Native_Color_Type
#Substitute native SkColorType
##
#Enum SkColorType
#Line # incomplete ##
#Code
enum SkColorType {
kUnknown_SkColorType,
kAlpha_8_SkColorType,
kRGB_565_SkColorType,
kARGB_4444_SkColorType,
kRGBA_8888_SkColorType,
kRGB_888x_SkColorType,
kBGRA_8888_SkColorType,
kRGBA_1010102_SkColorType,
kRGB_101010x_SkColorType,
kGray_8_SkColorType,
kRGBA_F16_SkColorType,
kLastEnum_SkColorType = kRGBA_F16_SkColorType,
kN32_SkColorType = kBGRA_8888_SkColorType,
kN32_SkColorType = kRGBA_8888_SkColorType,
};
##
Describes how to interpret the components of a pixel.
kN32_SkColorType selects the native 32-bit Color_ARGB format. On Little_Endian
processors, pixels containing 8-bit Color_ARGB components pack into 32-bit
kBGRA_8888_SkColorType. On Big_Endian processors, pixels pack into 32-bit
kRGBA_8888_SkColorType.
#Const kUnknown_SkColorType 0
##
#Const kAlpha_8_SkColorType 1
##
#Const kRGB_565_SkColorType 2
##
#Const kARGB_4444_SkColorType 3
##
#Const kRGBA_8888_SkColorType 4
##
#Const kRGB_888x_SkColorType 5
##
#Const kBGRA_8888_SkColorType 6
##
#Const kRGBA_1010102_SkColorType 7
##
#Const kRGB_101010x_SkColorType 8
##
#Const kGray_8_SkColorType 9
##
#Const kRGBA_F16_SkColorType 10
##
#ToDo can be 4 or 6; how to document? ##
#Const kN32_SkColorType 4
##
#Example
// incomplete
##
#SeeAlso incomplete
#Enum SkColorType ##
#Subtopic Color_Type ##
# ------------------------------------------------------------------------------
#Subtopic YUV_ColorSpace
#Alias YUV_ColorSpace
#Enum SkYUVColorSpace
#Line # incomplete ##
#Code
enum SkYUVColorSpace {
kJPEG_SkYUVColorSpace,
kRec601_SkYUVColorSpace,
kRec709_SkYUVColorSpace,
kLastEnum_SkYUVColorSpace = kRec709_SkYUVColorSpace,
};
##
Describes the color space a YUV pixel.
#Const kJPEG_SkYUVColorSpace 0
Standard JPEG color space.
##
#Const kRec601_SkYUVColorSpace 1
SDTV standard Rec. 601 color space. Uses "studio swing" [16, 235] color
range. See http://en.wikipedia.org/wiki/Rec._601 for details.
##
#Const kRec709_SkYUVColorSpace 2
HDTV standard Rec. 709 color space. Uses "studio swing" [16, 235] color
range. See http://en.wikipedia.org/wiki/Rec._709 for details.
##
#Example
// incomplete
##
#SeeAlso incomplete
#Enum SkYUVColorSpace ##
#Subtopic YUV_ColorSpace ##
# ------------------------------------------------------------------------------
#EnumClass SkDestinationSurfaceColorMode
#Line # incomplete ##
#Code
enum class SkDestinationSurfaceColorMode {
kLegacy,
kGammaAndColorSpaceAware,
};
##
#Const kLegacy 0
##
#Const kGammaAndColorSpaceAware 1
##
#Example
// incomplete
##
#SeeAlso incomplete
#EnumClass SkDestinationSurfaceColorMode ##
# ------------------------------------------------------------------------------
#Struct SkImageInfo
Describes Image dimensions and pixel type.
Used for both source images and render-targets (surfaces).
#Subtopic Member_Function
#Populate
##
#Subtopic Related_Function
#Populate
##
# ------------------------------------------------------------------------------
#Subtopic Constructor
#Populate
##
#Method SkImageInfo()
#In Constructor
#Line # creates with zero dimensions, kUnknown_SkColorType, kUnknown_SkAlphaType ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static SkImageInfo Make(int width, int height, SkColorType ct, SkAlphaType at,
sk_sp<SkColorSpace> cs = nullptr)
#In Constructor
#Line # creates Image_Info from dimensions, Color_Type, Alpha_Type, Color_Space ##
#Param width incomplete ##
#Param height incomplete ##
#Param ct incomplete ##
#Param at incomplete ##
#Param cs incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static SkImageInfo MakeN32(int width, int height, SkAlphaType at,
sk_sp<SkColorSpace> cs = nullptr)
#In Constructor
#Line # creates Image_Info with Native_Color_Type ##
Sets Color_Type to kN32_SkColorType.
#Param width incomplete ##
#Param height incomplete ##
#Param at incomplete ##
#Param cs incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static SkImageInfo MakeS32(int width, int height, SkAlphaType at)
#In Constructor
#Line # creates Image_Info with Native_Color_Type, sRGB Color_Space ##
Creates Image_Info marked as sRGB with kN32_SkColorType swizzle.
#Param width incomplete ##
#Param height incomplete ##
#Param at incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static SkImageInfo MakeN32Premul(int width, int height, sk_sp<SkColorSpace> cs = nullptr)
#In Constructor
#Line # creates Image_Info with Native_Color_Type, kPremul_SkAlphaType ##
Sets Color_Type to kN32_SkColorType, and the Alpha_Type to kPremul_SkAlphaType.
#Param width incomplete ##
#Param height incomplete ##
#Param cs incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static SkImageInfo MakeN32Premul(const SkISize& size)
#In Constructor
#Param size incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static SkImageInfo MakeA8(int width, int height)
#In Constructor
#Line # creates Image_Info with kAlpha_8_SkColorType, kPremul_SkAlphaType ##
#Param width incomplete ##
#Param height incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static SkImageInfo MakeUnknown(int width, int height)
#In Constructor
#Line # creates Image_Info with kUnknown_SkColorType, kUnknown_SkAlphaType ##
#Param width incomplete ##
#Param height incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static SkImageInfo MakeUnknown()
#In Constructor
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Subtopic Property
#Populate
#Line # metrics and attributes ##
##
#Method int width() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method int height() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkColorType colorType() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkAlphaType alphaType() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkColorSpace* colorSpace() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method sk_sp<SkColorSpace> refColorSpace() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method bool isEmpty() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method bool isOpaque() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkISize dimensions() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkIRect bounds() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method bool gammaCloseToSRGB() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkImageInfo makeWH(int newWidth, int newHeight) const
#In Constructor
#Line # creates Image_Info with changed dimensions ##
Creates Image_Info with the same Color_Type and Alpha_Type as this info,
but with the specified width and height.
#Param newWidth incomplete ##
#Param newHeight incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkImageInfo makeAlphaType(SkAlphaType newAlphaType) const
#In Constructor
#Line # creates Image_Info with changed Alpha_Type ##
#Param newAlphaType incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkImageInfo makeColorType(SkColorType newColorType) const
#In Constructor
#Line # creates Image_Info with changed Color_Type ##
#Param newColorType incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method SkImageInfo makeColorSpace(sk_sp<SkColorSpace> cs) const
#In Constructor
#Line # creates Image_Info with changed Color_Space ##
#Param cs incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method int bytesPerPixel() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method int shiftPerPixel() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method uint64_t minRowBytes64() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method size_t minRowBytes() const
#In Property
#Line # incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method size_t computeOffset(int x, int y, size_t rowBytes) const
#In Utility
#Line # incomplete ##
#Param x incomplete ##
#Param y incomplete ##
#Param rowBytes incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Subtopic Operator
#Populate
##
#Method bool operator==(const SkImageInfo& other)_const
#Line # incomplete ##
#Param other incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method bool operator!=(const SkImageInfo& other)_const
#Line # incomplete ##
#Param other incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method void unflatten(SkReadBuffer& buffer)
#In Utility
#Line # incomplete ##
#Param buffer incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method void flatten(SkWriteBuffer& buffer) const
#In Utility
#Line # incomplete ##
#Param buffer incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method size_t computeByteSize(size_t rowBytes) const
#In Utility
#Line # incomplete ##
Returns the size (in bytes) of the image buffer that this info needs, given the specified
rowBytes. The rowBytes must be >= this->minRowBytes().
if (height == 0) {
return 0;
} else {
return (height - 1) * rowBytes + width * bytes_per_pixel.
If the calculation overflows this returns SK_MaxSizeT.
#Param rowBytes incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method size_t computeMinByteSize() const
#In Utility
#Line # incomplete ##
Returns the minimum size (in bytes) of the image buffer that this info needs.
If the calculation overflows, or if the height is 0, this returns 0.
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method static bool ByteSizeOverflowed(size_t byteSize)
#In Utility
#Line # incomplete ##
Returns true if the result of computeByteSize (or computeMinByteSize) overflowed
#Param byteSize incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method bool validRowBytes(size_t rowBytes) const
#In Utility
#Line # incomplete ##
#Param rowBytes incomplete ##
#Return incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Method void reset()
#In Constructor
#Line # incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
# ------------------------------------------------------------------------------
#Subtopic Utility
#Populate
#Line # rarely called management functions ##
##
#Method void validate() const
#In Utility
#Line # incomplete ##
#Example
// incomplete
##
#SeeAlso incomplete
#Method ##
#Struct SkImageInfo ##
#Topic Image_Info ##