libpgf  6.12.24
PGF - Progressive Graphics File
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Encoder.cpp File Reference
#include "Encoder.h"

Go to the source code of this file.

Macros

#define CodeBufferBitLen   (CodeBufferLen*WordWidth)
 max number of bits in m_codeBuffer
 
#define MaxCodeLen   ((1 << RLblockSizeLen) - 1)
 max length of RL encoded block
 

Functions

*Write pre and levelLength *It
might throw an IOException
*param stream A PGF stream
*param preHeader A already
filled in PGF pre header
*param header An already
filled in PGF header *param
postHeader[in] An already
filled in PGF post 
header (containing color table, user data,...)*@param userDataPos[out] File position of user data *@param useOMP If true
 
 for (int i=0;i< hh.quot;i++)
 

Variables

*file Encoder cpp *brief PGF
encoder class implementation
*author C 
Stamm
 
*Write pre header
 
*Write pre postHeader
 
*Create level length data
structure and write a place
holder into stream *It might
throw an IOException *param
levelLength A reference to an
integer 
array
 
*Partitions a rectangular
region of a given subband
*Partitioning 
scheme
 
*Partitions a rectangular
region of a given subband
*Partitioning int 
width
 
*Partitions a rectangular
region of a given subband
*Partitioning int int 
height
 
*Partitions a rectangular
region of a given subband
*Partitioning int int int 
startPos
 
*Partitions a rectangular
region of a given subband
*Partitioning int int int int
pitch 
THROW_
 
const div_t hh = div(height, LinBlockSize)
 
const div_t ww = div(width, LinBlockSize)
 
const int ws = pitch - LinBlockSize
 
const int wr = pitch - ww.rem
 
int pos = base2
 
int base = startPos
 
int base2 = base
 

Macro Definition Documentation

#define CodeBufferBitLen   (CodeBufferLen*WordWidth)

max number of bits in m_codeBuffer

Definition at line 58 of file Encoder.cpp.

#define MaxCodeLen   ((1 << RLblockSizeLen) - 1)

max length of RL encoded block

Definition at line 59 of file Encoder.cpp.

Function Documentation

for ( )

Definition at line 251 of file Encoder.cpp.

{
// main width
for (int j=0; j < ww.quot; j++) {
for (int y=0; y < LinBlockSize; y++) {
for (int x=0; x < LinBlockSize; x++) {
WriteValue(band, pos);
pos++;
}
pos += ws;
}
}
// rest of width
for (int y=0; y < LinBlockSize; y++) {
for (int x=0; x < ww.rem; x++) {
WriteValue(band, pos);
pos++;
}
pos += wr;
base += pitch;
}
}
* Write pre and levelLength* It might throw an IOException* param stream A PGF stream* param preHeader A already filled in PGF pre header* param header An already filled in PGF header* param postHeader [in] An already filled in PGF post header ( containing color  table,
user  data,
  ... 
)

Variable Documentation

* Create level length data structure and write a place holder into stream* It might throw an IOException* param levelLength A reference to an integer array

Definition at line 170 of file Encoder.cpp.

int base = startPos

Definition at line 248 of file Encoder.cpp.

base2 = base

Definition at line 248 of file Encoder.cpp.

* Write pre header

Definition at line 62 of file Encoder.cpp.

* Partitions a rectangular region of a given subband* Partitioning int int height

Definition at line 241 of file Encoder.cpp.

const div_t hh = div(height, LinBlockSize)

Definition at line 244 of file Encoder.cpp.

pos = base2

Definition at line 248 of file Encoder.cpp.

*Write pre and levelLength *It might throw an IOException *param stream A PGF stream *param preHeader A already filled in PGF pre header *param header An already filled in PGF header *param postHeader

Definition at line 62 of file Encoder.cpp.

* Partitions a rectangular region of a given subband* Partitioning scheme

Definition at line 241 of file Encoder.cpp.

* file Encoder cpp* brief PGF encoder class implementation* author C Stamm

Definition at line 26 of file Encoder.cpp.

* Partitions a rectangular region of a given subband* Partitioning int int int startPos

Definition at line 241 of file Encoder.cpp.

* Partitions a rectangular region of a given subband* Partitioning int int int int pitch THROW_
Initial value:
{
ASSERT(band)

Definition at line 241 of file Encoder.cpp.

* Partitions a rectangular region of a given subband* Partitioning int width

Definition at line 241 of file Encoder.cpp.

const int wr = pitch - ww.rem

Definition at line 247 of file Encoder.cpp.

const int ws = pitch - LinBlockSize

Definition at line 246 of file Encoder.cpp.

const div_t ww = div(width, LinBlockSize)

Definition at line 245 of file Encoder.cpp.