/*---------------------------------------------------------------------------- pgmtopgm ------------------------------------------------------------------------------ Part of the Netpbm package. Copy PGM image from Standard Input to Standard Output By Bryan Henderson, San Jose CA 2002.09.07 Contributed to the public domain by its author 2002.09.07 -----------------------------------------------------------------------------*/ #include "pgm.h" int main(int argc, char *argv[]) { int format; int rows, cols; gray maxval; int row; gray * grayrow; pgm_init(&argc, argv); if (argc-1 != 0) pm_error("Program takes no arguments. Input is from Standard Input"); pgm_readpgminit(stdin, &cols, &rows, &maxval, &format); pgm_writepgminit(stdout, cols, rows, maxval, 0); grayrow = pgm_allocrow(cols); for (row = 0; row < rows; ++row) { pgm_readpgmrow(stdin, grayrow, cols, maxval, format); pgm_writepgmrow(stdout, grayrow, cols, maxval, 0); } pgm_freerow(grayrow); pm_close(stdin); return 0; }