1 | /* docman.h |
---|
2 | * |
---|
3 | * Copyright (C) 1990 Adobe Systems Incorporated. All rights reserved. |
---|
4 | * GOVERNMENT END USERS: See notice of rights in Notice file in TranScript |
---|
5 | * library directory -- probably /usr/lib/ps/Notice |
---|
6 | * RCSID: $Header: /afs/dev.mit.edu/source/repository/third/transcript/src/docman.h,v 1.1.1.1 1996-10-07 20:25:48 ghudson Exp $ |
---|
7 | * |
---|
8 | * global defines for the psparse package. |
---|
9 | * |
---|
10 | * |
---|
11 | * $Log: not supported by cvs2svn $ |
---|
12 | * Revision 3.3 1994/05/03 23:01:32 snichols |
---|
13 | * Handle null in name of resource, and handle files with neither prolog |
---|
14 | * nor setup comments. |
---|
15 | * |
---|
16 | * Revision 3.2 1994/02/16 00:32:04 snichols |
---|
17 | * support for Orientation comment |
---|
18 | * |
---|
19 | * Revision 3.1 1992/08/21 16:26:32 snichols |
---|
20 | * Release 4.0 |
---|
21 | * |
---|
22 | * Revision 3.0 1991/06/19 20:05:42 snichols |
---|
23 | * Release 3.0 |
---|
24 | * |
---|
25 | * Revision 1.5 1991/06/19 20:05:10 snichols |
---|
26 | * increased limits on MAXRESOURCES, added MAXREM. |
---|
27 | * |
---|
28 | * Revision 1.4 1991/02/20 16:34:11 snichols |
---|
29 | * support for new, as yet undefined, resource types. |
---|
30 | * |
---|
31 | * Revision 1.3 91/01/23 16:32:32 snichols |
---|
32 | * Added support for landscape, cleaned up some defaults, and |
---|
33 | * handled *PageRegion features better. |
---|
34 | * |
---|
35 | * Revision 1.2 90/12/12 09:56:23 snichols |
---|
36 | * added ranges to resource data structure, and added feature data |
---|
37 | * structure. |
---|
38 | * |
---|
39 | * |
---|
40 | */ |
---|
41 | |
---|
42 | |
---|
43 | |
---|
44 | #define MAXRESOURCES 1000 |
---|
45 | #define MAXREM 10000 |
---|
46 | |
---|
47 | #define VERS1 10 |
---|
48 | #define VERS2 20 |
---|
49 | #define VERS21 21 |
---|
50 | #define VERS3 30 |
---|
51 | |
---|
52 | #define FONT 0 |
---|
53 | #define RFILE 1 |
---|
54 | #define PROCSET 2 |
---|
55 | #define UNKNOWN -1 |
---|
56 | #define MAXRESTYPES 20 |
---|
57 | |
---|
58 | char resmap[MAXRESTYPES][30] = { |
---|
59 | "font", "file", "procset", "pattern", "form", "encoding", "", "", "", |
---|
60 | "", "", "", "", "", "", "", "", "", "", ""}; |
---|
61 | |
---|
62 | |
---|
63 | #define HEADCOM 10 |
---|
64 | |
---|
65 | |
---|
66 | enum comtypes { |
---|
67 | docfont, docneedfont, docsupfont, docneedres, docsupres, |
---|
68 | docneedfile, docsupfile, docproc, docneedproc, docsupproc, |
---|
69 | pagefont, pageres, incfont, incres, begfont, endfont, |
---|
70 | begres, endres, pagefile, incfile, begfile, endfile, |
---|
71 | incproc, begproc, endproc, page, begdoc, enddoc, trailer, |
---|
72 | incfeature, begfeature, endfeature, begbin, endbin, |
---|
73 | begdata, enddata, begsetup, endsetup, begprolog, endprolog, endcomment, |
---|
74 | pageorder, langlevel, begdef, enddef, orient, pages, invalid |
---|
75 | }; |
---|
76 | |
---|
77 | enum resstates { |
---|
78 | inprinter, download, verify, indocument, future, nowhere |
---|
79 | }; |
---|
80 | |
---|
81 | enum rangestates { |
---|
82 | header, defaults, pageinrange, undefined |
---|
83 | }; |
---|
84 | |
---|
85 | struct resource { |
---|
86 | int type; /* what type of resource */ |
---|
87 | char name[255]; /* name of resource */ |
---|
88 | char path[255]; /* where to find it */ |
---|
89 | float version; /* only used for procsets */ |
---|
90 | int rev; /* only used for procsets */ |
---|
91 | enum resstates state; /* from resstates, above */ |
---|
92 | enum comtypes comment; /* what kind of comment did we find it in */ |
---|
93 | enum rangestates rangeinfo; /* from rangestates, above */ |
---|
94 | int inrange; /* is it in the range we're interested in? */ |
---|
95 | long minvm; /* min vm consumed (fonts) */ |
---|
96 | long maxvm; /* max vm consumed (fonts) */ |
---|
97 | }; |
---|
98 | |
---|
99 | struct dtable { |
---|
100 | long location; |
---|
101 | int type; |
---|
102 | int index; |
---|
103 | enum comtypes comment; |
---|
104 | }; |
---|
105 | |
---|
106 | struct feature { |
---|
107 | long location; |
---|
108 | char *code; |
---|
109 | char name[255]; |
---|
110 | char option[255]; |
---|
111 | }; |
---|
112 | |
---|
113 | char *standardfonts[35] = { |
---|
114 | "AvantGarde-Book", "AvantGarde-BookOblique", "AvantGarde-Demi", |
---|
115 | "AvantGarde-DemiOblique", "Bookman-Demi", "Bookman-DemiItalic", |
---|
116 | "Bookman-Light", "Bookman-LightItalic", "Courier", "Courier-Bold", |
---|
117 | "Courier-BoldOblique", "Courier-Oblique", "Helvetica", "Helvetica-Bold", |
---|
118 | "Helvetica-BoldOblique", "Helvetica-Narrow", "Helvetica-Narrow-Bold", |
---|
119 | "Helvetica-Narrow-BoldOblique", "Helvetica-Narrow-Oblique", "Helvetica-Oblique", |
---|
120 | "NewCenturySchlbk-Bold", "NewCenturySchlbk-BoldItalic", |
---|
121 | "NewCenturySchlbk-Italic", "NewCenturySchlbk-Roman", "Palatino-Bold", |
---|
122 | "Palatino-BoldItalic", "Palatino-Italic", "Palatino-Roman", "Symbol", |
---|
123 | "Times-Bold", "Times-BoldItalic", "Times-Italic", "Times-Roman", |
---|
124 | "ZapfChancery-MediumItalic", "ZapfDingbats" |
---|
125 | }; |
---|