New Text by H.G. Wells: War of the Worlds
[ccbib.git] / psutils / psutil.h
blobdeed93ac81171a634bdc99ed690be35713aeba32
1 /* psutil.h
2 * Copyright (C) Angus J. C. Duggan 1991-1995
3 * See file LICENSE for details.
5 * utilities for PS programs
6 */
8 #include <stdio.h>
9 #include <stdlib.h>
10 #include <ctype.h>
12 #include "config.h"
14 /* types for describing document; this is a step towards version 2 */
15 typedef long Fileptr ;
17 /* paper size structure; configurability and proper paper resources will have
18 to wait until version 2 */
19 typedef struct papersize {
20 char *name; /* name of paper size */
21 int width, height; /* width, height in points */
22 } Paper ;
23 #define PaperName(p) ((p)->name)
24 #define PaperWidth(p) ((p)->width)
25 #define PaperHeight(p) ((p)->height)
27 /* Definitions for functions found in psutil.c */
28 extern Paper *findpaper(char *name);
29 extern FILE *seekable(FILE *fp);
30 extern void writepage(int p);
31 extern void seekpage(int p);
32 extern void writepageheader(char *label, int p);
33 extern void writepagesetup(void);
34 extern void writepagebody(int p);
35 extern void writeheader(int p);
36 extern int writepartprolog(void);
37 extern void writeprolog(void);
38 extern void writesetup(void);
39 extern void writetrailer(void);
40 extern void writeemptypage(void);
41 extern void scanpages(void);
42 extern void writestring(char *s);
44 /* These variables are imported from the client program (e.g. psbook, psnup,
45 etc.) */
46 extern char *program ;
47 extern int pages;
48 extern int verbose;
49 extern FILE *infile;
50 extern FILE *outfile;
51 extern char pagelabel[BUFSIZ];
52 extern int pageno;