[9089] | 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 | }; |
---|