24#define PNG_SIGNATURE { { 0x89, 'P', 'N', 'G', '\r', '\n', 0x1a, '\n' } }
73#define PNG_TYPE( first, second, third, fourth ) \
74 ( ( (first) << 24 ) | ( (second) << 16 ) | ( (third) << 8 ) | (fourth) )
77#define PNG_TYPE_IHDR PNG_TYPE ( 'I', 'H', 'D', 'R' )
108#define PNG_COLOUR_TYPE_MASK 0x07
137#define PNG_TYPE_PLTE PNG_TYPE ( 'P', 'L', 'T', 'E' )
156#define PNG_PALETTE_COUNT 256
159#define PNG_TYPE_IDAT PNG_TYPE ( 'I', 'D', 'A', 'T' )
176#define PNG_TYPE_IEND PNG_TYPE ( 'I', 'E', 'N', 'D' )
uint32_t type
Operating system type.
#define FILE_LICENCE(_licence)
Declare a particular licence as applying to a file.
#define FILE_SECBOOT(_status)
Declare a file's UEFI Secure Boot permission status.
#define PROBE_NORMAL
Normal image probe priority.
#define __image_type(probe_order)
An executable image type.
png_chunk_type_bits
PNG chunk type property bits.
@ PNG_CHUNK_RESERVED
Reserved.
@ PNG_CHUNK_ANCILLARY
Chunk is ancillary.
@ PNG_CHUNK_PRIVATE
Chunk is private.
@ PNG_CHUNK_SAFE
Chunk is safe to copy.
png_filter_method
PNG filter methods.
@ PNG_FILTER_BASIC
Adaptive filtering with five basic types.
@ PNG_FILTER_UNKNOWN
First unknown filter method.
png_interlace_method
PNG interlace methods.
@ PNG_INTERLACE_NONE
No interlacing.
@ PNG_INTERLACE_UNKNOWN
First unknown interlace method.
@ PNG_INTERLACE_ADAM7
Adam7 interlacing.
png_basic_filter_type
PNG basic filter types.
@ PNG_FILTER_BASIC_SUB
Left byte used as predictor.
@ PNG_FILTER_BASIC_UP
Above byte used as predictor.
@ PNG_FILTER_BASIC_PAETH
Paeth filter.
@ PNG_FILTER_BASIC_AVERAGE
Above and left bytes used as predictors.
@ PNG_FILTER_BASIC_NONE
No filtering.
png_colour_type
PNG colour type bits.
@ PNG_COLOUR_TYPE_ALPHA
Alpha channel is used.
@ PNG_COLOUR_TYPE_PALETTE
Palette is used.
@ PNG_COLOUR_TYPE_RGB
RGB colour is used.
png_compression_method
PNG compression methods.
@ PNG_COMPRESSION_UNKNOWN
First unknown compression method.
@ PNG_COMPRESSION_DEFLATE
DEFLATE compression with 32kB sliding window.
static uint32_t png_canonical_type(uint32_t type)
Canonicalise PNG chunk type.
An executable image type.
struct png_palette_entry entries[0]
Palette entries.
uint8_t bytes[8]
Signature bytes.