Main Page | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

jutils.c File Reference

#include "jinclude.h"
#include "jpeglib.h"

Include dependency graph for jutils.c:

Include dependency graph

Go to the source code of this file.

Defines

#define FMEMCOPY(dest, src, size)   MEMCOPY(dest,src,size)
#define FMEMZERO(target, size)   MEMZERO(target,size)
#define JPEG_INTERNALS

Functions

GLOBAL void jcopy_block_row (JBLOCKROW input_row, JBLOCKROW output_row, JDIMENSION num_blocks)
GLOBAL void jcopy_sample_rows (JSAMPARRAY input_array, int source_row, JSAMPARRAY output_array, int dest_row, int num_rows, JDIMENSION num_cols)
GLOBAL long jdiv_round_up (long a, long b)
GLOBAL long jround_up (long a, long b)
GLOBAL void jzero_far (void FAR *target, size_t bytestozero)

Variables

const int jpeg_natural_order [DCTSIZE2+16]
const int jpeg_zigzag_order [DCTSIZE2]


Define Documentation

#define FMEMCOPY dest,
src,
size   )     MEMCOPY(dest,src,size)
 

Definition at line 96 of file jutils.c.

Referenced by jcopy_block_row(), and jcopy_sample_rows().

#define FMEMZERO target,
size   )     MEMZERO(target,size)
 

Definition at line 97 of file jutils.c.

Referenced by jzero_far().

#define JPEG_INTERNALS
 

Definition at line 14 of file jutils.c.


Function Documentation

GLOBAL void jcopy_block_row JBLOCKROW  input_row,
JBLOCKROW  output_row,
JDIMENSION  num_blocks
 

Definition at line 141 of file jutils.c.

References count, DCTSIZE2, FMEMCOPY, JCOEF, JCOEFPTR, JDIMENSION, and SIZEOF.

00144 {
00145 #ifdef FMEMCOPY
00146   FMEMCOPY(output_row, input_row, num_blocks * (DCTSIZE2 * SIZEOF(JCOEF)));
00147 #else
00148   register JCOEFPTR inptr, outptr;
00149   register long count;
00150 
00151   inptr = (JCOEFPTR) input_row;
00152   outptr = (JCOEFPTR) output_row;
00153   for (count = (long) num_blocks * DCTSIZE2; count > 0; count--) {
00154     *outptr++ = *inptr++;
00155   }
00156 #endif
00157 }

GLOBAL void jcopy_sample_rows JSAMPARRAY  input_array,
int  source_row,
JSAMPARRAY  output_array,
int  dest_row,
int  num_rows,
JDIMENSION  num_cols
 

Definition at line 107 of file jutils.c.

References count, FMEMCOPY, JDIMENSION, JSAMPLE, JSAMPROW, size_t, and SIZEOF.

00115 {
00116   register JSAMPROW inptr, outptr;
00117 #ifdef FMEMCOPY
00118   register size_t count = (size_t) (num_cols * SIZEOF(JSAMPLE));
00119 #else
00120   register JDIMENSION count;
00121 #endif
00122   register int row;
00123 
00124   input_array += source_row;
00125   output_array += dest_row;
00126 
00127   for (row = num_rows; row > 0; row--) {
00128     inptr = *input_array++;
00129     outptr = *output_array++;
00130 #ifdef FMEMCOPY
00131     FMEMCOPY(outptr, inptr, count);
00132 #else
00133     for (count = num_cols; count > 0; count--)
00134       *outptr++ = *inptr++; /* needn't bother with GETJSAMPLE() here */
00135 #endif
00136   }
00137 }

GLOBAL long jdiv_round_up long  a,
long  b
 

Definition at line 68 of file jutils.c.

References a, and b.

00071 {
00072   return (a + b - 1L) / b;
00073 }

GLOBAL long jround_up long  a,
long  b
 

Definition at line 77 of file jutils.c.

References a, and b.

00080 {
00081   a += b - 1L;
00082   return a - (a % b);
00083 }

GLOBAL void jzero_far void FAR *  target,
size_t  bytestozero
 

Definition at line 161 of file jutils.c.

References count, FAR, FMEMZERO, ptr(), and size_t.

00164 {
00165 #ifdef FMEMZERO
00166   FMEMZERO(target, bytestozero);
00167 #else
00168   register char FAR * ptr = (char FAR *) target;
00169   register size_t count;
00170 
00171   for (count = bytestozero; count > 0; count--) {
00172     *ptr++ = 0;
00173   }
00174 #endif
00175 }

Here is the call graph for this function:


Variable Documentation

const int jpeg_natural_order[DCTSIZE2+16]
 

Initial value:

 {
  0,  1,  8, 16,  9,  2,  3, 10,
 17, 24, 32, 25, 18, 11,  4,  5,
 12, 19, 26, 33, 40, 48, 41, 34,
 27, 20, 13,  6,  7, 14, 21, 28,
 35, 42, 49, 56, 57, 50, 43, 36,
 29, 22, 15, 23, 30, 37, 44, 51,
 58, 59, 52, 45, 38, 31, 39, 46,
 53, 60, 61, 54, 47, 55, 62, 63,
 63, 63, 63, 63, 63, 63, 63, 63, 
 63, 63, 63, 63, 63, 63, 63, 63
}

Definition at line 49 of file jutils.c.

const int jpeg_zigzag_order[DCTSIZE2]
 

Initial value:

 {
   0,  1,  5,  6, 14, 15, 27, 28,
   2,  4,  7, 13, 16, 26, 29, 42,
   3,  8, 12, 17, 25, 30, 41, 43,
   9, 11, 18, 24, 31, 40, 44, 53,
  10, 19, 23, 32, 39, 45, 52, 54,
  20, 22, 33, 38, 46, 51, 55, 60,
  21, 34, 37, 47, 50, 56, 59, 61,
  35, 36, 48, 49, 57, 58, 62, 63
}

Definition at line 24 of file jutils.c.


Generated on Thu Aug 25 14:18:02 2005 for Quake III Arena by  doxygen 1.3.9.1