libpgf  6.14.12
PGF - Progressive Graphics File
PGFtypes.h File Reference

PGF definitions. More...

#include "PGFplatform.h"

Go to the source code of this file.

Classes

struct  PGFMagicVersion
 PGF identification and version. More...
 
struct  PGFPreHeader
 PGF pre-header. More...
 
struct  PGFHeader
 PGF header. More...
 
struct  PGFPostHeader
 Optional PGF post-header. More...
 
union  ROIBlockHeader
 Block header used with ROI coding scheme. More...
 
struct  ROIBlockHeader::RBH
 Named ROI block header (part of the union) More...
 
struct  IOException
 PGF exception. More...
 
struct  PGFRect
 Rectangle. More...
 

Macros

#define PGFCodecVersion   "6.14.12"
 Minor number: Year (2) Week (2) More...
 
#define PGFCodecVersionID   0x061412
 Codec version ID to use for API check in client implementation. More...
 
#define PGFMagic   "PGF"
 PGF identification. More...
 
#define MaxLevel   30
 maximum number of transform levels More...
 
#define NSubbands   4
 number of subbands per level More...
 
#define MaxChannels   8
 maximum number of (color) channels More...
 
#define DownsampleThreshold   3
 if quality is larger than this threshold than downsampling is used More...
 
#define ColorTableLen   256
 size of color lookup table (clut) More...
 
#define Version2   2
 data structure PGFHeader of major version 2 More...
 
#define PGF32   4
 32 bit values are used -> allows at maximum 31 bits, otherwise 16 bit values are used -> allows at maximum 15 bits More...
 
#define PGFROI   8
 supports Regions Of Interest More...
 
#define Version5   16
 new coding scheme since major version 5 More...
 
#define Version6   32
 new HeaderSize: 32 bits instead of 16 bits More...
 
#define PGFVersion   (Version2 | PGF32 | Version5 | Version6)
 current standard version More...
 
#define BufferSize   16384
 must be a multiple of WordWidth More...
 
#define RLblockSizeLen   15
 block size length (< 16): ld(BufferSize) < RLblockSizeLen <= 2*ld(BufferSize) More...
 
#define LinBlockSize   8
 side length of a coefficient block in a HH or LL subband More...
 
#define InterBlockSize   4
 side length of a coefficient block in a HL or LH subband More...
 
#define MaxBitPlanes   31
 maximum number of bit planes of m_value: 32 minus sign bit More...
 
#define MaxBitPlanesLog   5
 number of bits to code the maximum number of bit planes (in 32 or 16 bit mode) More...
 
#define MaxQuality   MaxBitPlanes
 maximum quality More...
 
#define MagicVersionSize   sizeof(PGFMagicVersion)
 
#define PreHeaderSize   sizeof(PGFPreHeader)
 
#define HeaderSize   sizeof(PGFHeader)
 
#define ColorTableSize   ColorTableLen*sizeof(RGBQUAD)
 
#define DataTSize   sizeof(DataT)
 

Typedefs

typedef INT32 DataT
 
typedef void(* RefreshCB) (void *p)
 

Enumerations

enum  Orientation { LL =0, HL =1, LH =2, HH =3 }
 

Detailed Description

PGF definitions.

Author
C. Stamm

Definition in file PGFtypes.h.

Macro Definition Documentation

◆ BufferSize

#define BufferSize   16384

must be a multiple of WordWidth

Definition at line 77 of file PGFtypes.h.

◆ ColorTableLen

#define ColorTableLen   256

size of color lookup table (clut)

Definition at line 60 of file PGFtypes.h.

◆ ColorTableSize

#define ColorTableSize   ColorTableLen*sizeof(RGBQUAD)

Definition at line 232 of file PGFtypes.h.

◆ DataTSize

#define DataTSize   sizeof(DataT)

Definition at line 233 of file PGFtypes.h.

◆ DownsampleThreshold

#define DownsampleThreshold   3

if quality is larger than this threshold than downsampling is used

Definition at line 59 of file PGFtypes.h.

◆ HeaderSize

#define HeaderSize   sizeof(PGFHeader)

Definition at line 231 of file PGFtypes.h.

◆ InterBlockSize

#define InterBlockSize   4

side length of a coefficient block in a HL or LH subband

Definition at line 80 of file PGFtypes.h.

◆ LinBlockSize

#define LinBlockSize   8

side length of a coefficient block in a HH or LL subband

Definition at line 79 of file PGFtypes.h.

◆ MagicVersionSize

#define MagicVersionSize   sizeof(PGFMagicVersion)

Definition at line 229 of file PGFtypes.h.

◆ MaxBitPlanes

#define MaxBitPlanes   31

maximum number of bit planes of m_value: 32 minus sign bit

Definition at line 82 of file PGFtypes.h.

◆ MaxBitPlanesLog

#define MaxBitPlanesLog   5

number of bits to code the maximum number of bit planes (in 32 or 16 bit mode)

Definition at line 86 of file PGFtypes.h.

◆ MaxChannels

#define MaxChannels   8

maximum number of (color) channels

Definition at line 58 of file PGFtypes.h.

◆ MaxLevel

#define MaxLevel   30

maximum number of transform levels

Definition at line 56 of file PGFtypes.h.

◆ MaxQuality

#define MaxQuality   MaxBitPlanes

maximum quality

Definition at line 87 of file PGFtypes.h.

◆ NSubbands

#define NSubbands   4

number of subbands per level

Definition at line 57 of file PGFtypes.h.

◆ PGF32

#define PGF32   4

32 bit values are used -> allows at maximum 31 bits, otherwise 16 bit values are used -> allows at maximum 15 bits

Definition at line 63 of file PGFtypes.h.

◆ PGFCodecVersion

#define PGFCodecVersion   "6.14.12"

Minor number: Year (2) Week (2)

Major number

Definition at line 48 of file PGFtypes.h.

◆ PGFCodecVersionID

#define PGFCodecVersionID   0x061412

Codec version ID to use for API check in client implementation.

Definition at line 50 of file PGFtypes.h.

◆ PGFMagic

#define PGFMagic   "PGF"

PGF identification.

Definition at line 55 of file PGFtypes.h.

◆ PGFROI

#define PGFROI   8

supports Regions Of Interest

Definition at line 64 of file PGFtypes.h.

◆ PGFVersion

#define PGFVersion   (Version2 | PGF32 | Version5 | Version6)

current standard version

Definition at line 69 of file PGFtypes.h.

◆ PreHeaderSize

#define PreHeaderSize   sizeof(PGFPreHeader)

Definition at line 230 of file PGFtypes.h.

◆ RLblockSizeLen

#define RLblockSizeLen   15

block size length (< 16): ld(BufferSize) < RLblockSizeLen <= 2*ld(BufferSize)

Definition at line 78 of file PGFtypes.h.

◆ Version2

#define Version2   2

data structure PGFHeader of major version 2

Definition at line 62 of file PGFtypes.h.

◆ Version5

#define Version5   16

new coding scheme since major version 5

Definition at line 65 of file PGFtypes.h.

◆ Version6

#define Version6   32

new HeaderSize: 32 bits instead of 16 bits

Definition at line 66 of file PGFtypes.h.

Typedef Documentation

◆ DataT

typedef INT32 DataT

Definition at line 219 of file PGFtypes.h.

◆ RefreshCB

typedef void(* RefreshCB) (void *p)

Definition at line 224 of file PGFtypes.h.

Enumeration Type Documentation

◆ Orientation

Enumerator
LL 
HL 
LH 
HH 

Definition at line 92 of file PGFtypes.h.

92 { LL=0, HL=1, LH=2, HH=3 };
Definition: PGFtypes.h:92
Definition: PGFtypes.h:92
Definition: PGFtypes.h:92
Definition: PGFtypes.h:92