home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume18 / geneal / part01 / pagemap.h < prev    next >
C/C++ Source or Header  |  1989-03-08  |  918b  |  32 lines

  1. /* pagemap.h - definition for the pagemap functions
  2.  * last edit 29-Jan-85 07:18:22 by jimmc (Jim McBeath)
  3.  *
  4.  * 29-Jan-85    Jim McBeath    convert to 7-char-distinct names
  5.  * 18.Sep.87  jimmc  Move XALLOC into xalloc.h
  6.  */
  7.  
  8. struct pagem {
  9.     int rows;        /* number of rows (lines) on the page */
  10.     int cols;        /* number of columns on the page */
  11.     char **data;    /* pointer to an array of char pointers */
  12. };
  13.  
  14. typedef struct pagem Pagem, *Pagemp;
  15.  
  16. /* data is stored in row major order; given the data pointer from the
  17.  * above structure, data[x] points to row x, and data[x][y] points to
  18.  * character y in row x.
  19.  *
  20.  * The number of columns is actually greater by two than the number
  21.  * x->cols indicates; this is to leave space for a newline and a null
  22.  * at the end.
  23.  */
  24.  
  25. /* access macros */
  26. #define pagPutc(pp,r,c,ch) ((pp)->data[r][c] = (ch))
  27. #define pagGetc(pp,r,c)    ((pp)->data[r][c])
  28.  
  29. extern Pagemp pageInit();
  30.  
  31. /* end */
  32.