JuicyPixels-3.3.9: Picture loading/serialization (in png, jpeg, bitmap, gif, tga, tiff and radiance)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Codec.Picture.Jpg.Internal.DefaultTable

Description

Module used by the jpeg decoder internally, shouldn't be used in user code.

Synopsis

Documentation

data DctComponent Source #

Enumeration used to search in the tables for different components.

Constructors

DcComponent 
AcComponent 

Instances

Instances details
Generic DctComponent Source # 
Instance details

Defined in Codec.Picture.Jpg.Internal.DefaultTable

Associated Types

type Rep DctComponent :: Type -> Type #

Show DctComponent Source # 
Instance details

Defined in Codec.Picture.Jpg.Internal.DefaultTable

NFData DctComponent Source # 
Instance details

Defined in Codec.Picture.Jpg.Internal.DefaultTable

Methods

rnf :: DctComponent -> () #

Eq DctComponent Source # 
Instance details

Defined in Codec.Picture.Jpg.Internal.DefaultTable

type Rep DctComponent Source # 
Instance details

Defined in Codec.Picture.Jpg.Internal.DefaultTable

type Rep DctComponent = D1 ('MetaData "DctComponent" "Codec.Picture.Jpg.Internal.DefaultTable" "JuicyPixels-3.3.9-8TrKyMTj3IQ4xY3eA8GFM4" 'False) (C1 ('MetaCons "DcComponent" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AcComponent" 'PrefixI 'False) (U1 :: Type -> Type))

data HuffmanTree Source #

Tree storing the code used for huffman encoding.

Constructors

Branch HuffmanTree HuffmanTree

If bit is 0 take the first subtree, if 1, the right.

Leaf Word8

We should output the value

Empty

no value present

type MacroBlock a = Vector a Source #

Represent a compact array of 8 * 8 values. The size is not guarenteed by type system, but if makeMacroBlock is used, everything should be fine size-wise

makeMacroBlock :: Storable a => [a] -> MacroBlock a Source #

Helper function to create pure macro block of the good size.

buildHuffmanTree :: [[Word8]] -> HuffmanTree Source #

Transform parsed coefficients from the jpeg header to a tree which can be used to decode data.

defaultAcLumaHuffmanTable :: HuffmanTable Source #

From the Table K.5 of ITU-81 (p154)

defaultDcChromaHuffmanTable :: HuffmanTable Source #

From the Table K.4 of ITU-81 (p153)

defaultDcLumaHuffmanTable :: HuffmanTable Source #

From the Table K.3 of ITU-81 (p153)