libpgm (3)
functions to support portable graymap programs
SYNOPSIS
Se
P
#include <pgm.h>
cc ... libpgm.a libpbm.a
DESCRIPTION
typedef ... gray;
#define PGM_MAXMAXVAL ...
extern gray pgm_pbmmaxval;
Each
gray
should contain only the values between
0
and
PGM_MAXMAXVAL .
pgm_pbmmaxval
is the maxval used when a PGM program reads a PBM file.
Normally it is 1; however, for some programs, a larger value gives better
results.
#define PGM_FORMAT ...
#define RPGM_FORMAT ...
#define PGM_TYPE PGM_FORMAT
int PGM_FORMAT_TYPE( int format )
For distinguishing different file formats and types.
void pgm_init( int* argcP, char* argv[] )
All PGM programs must call this routine.
gray** pgm_allocarray( int cols, int rows )
Allocate an array of grays.
gray* pgm_allocrow( int cols )
Allocate a row of the given number of grays.
void pgm_freearray( gray** grays, int rows )
Free the array allocated with
pgm_allocarray()
containing the given number
of rows.
void pgm_freerow( gray* grayrow )
Free a row of grays.
void pgm_readpgminit( FILE* fp, int* colsP, int* rowsP, gray* maxvalP, int* formatP )
Read the header from a PGM file, filling in the rows, cols, maxval and format
variables.
void pgm_readpgmrow( FILE* fp, gray* grayrow, int cols, gray maxval, int format )
Read a row of grays into the grayrow array.
Format, cols, and maxval were filled in by
pgm_readpgminit() .
gray** pgm_readpgm( FILE* fp, int* colsP, int* rowsP, gray* maxvalP )
Read an entire graymap file into memory, returning the allocated array and
filling in the rows, cols and maxval variables.
This function combines
pgm_readpgminit() ,
pgm_allocarray()
and
pgm_readpgmrow() .
void pgm_writepgminit( FILE* fp, int cols, int rows, gray maxval, int forceplain )
Write the header for a portable graymap file.
The forceplain flag forces a plain-format file to be written, as opposed
to a raw-format one.
void pgm_writepgmrow( FILE* fp, gray* grayrow, int cols, gray maxval, int forceplain )
Write a row from a portable graymap.
void pgm_writepgm( FILE* fp, gray** grays, int cols, int rows, gray maxval, int forceplain )
Write the header and all data for a portable graymap.
This function combines
pgm_writepgminit()
and
pgm_writepgmrow() .
SEE ALSO
AUTHOR
Copyright (C) 1989, 1991 by Tony Hansen and Jef Poskanzer.
|
|