ftp.nice.ch/pub/next/text/tex/apps/TeXview-kp0.25.s.tar.gz#/TeXview/structures.h

This is structures.h in view mode; [Download] [Up]

/*
 *   This software is Copyright 1988 by Radical Eye Software.
 *   All Rights Reserved.
 */
#import <stdio.h>
/*
 *   Constants, used to expand or decrease the capacity of this program.
 *   Since all memory is dynamically allocated and the constants in the
 *   program are due to limitations of TeX or the printer itself, there
 *   are really few changes that can be made here.
 */
#define RASTERCHUNK (4000)  /* size of chunk of raster */
#define MINCHUNK (1000)     /* anything this big gets its own chunk */
#define MAXDRIFT (1)        /* maximum drift in pixels */
#define MAXFRAME (10)        /* maximum depth of virtual font recursion */
#define STACKSIZE (100)     /* maximum stack size for dvi files */
/*
 *   Our memory type declarations.
 */
#define MEMF_CLEAR (1)
/*
 *   No file.
 */
#define NOFILETITLE ""
/*
 *   Type declarations.  integer must be a 32-bit signed; shalfword must
 *   be a sixteen-bit signed; halfword must be a sixteen-bit unsigned;
 *   quarterword must be an eight-bit unsigned.
 */
typedef long integer ;
typedef short shalfword ;
typedef unsigned short halfword ;
typedef unsigned char quarterword ;
typedef float real ;
typedef int Boolean ;
/*
 *   A chardesc describes an individual character.
 */
typedef struct {
   integer TFMwidth ;
   quarterword *packptr ; /* only used for virtual fonts */
   halfword pixelwidth ;
   halfword dummy ;
} chardesctype ;
/*
 *   A fontdesc describes a font.  The name of the font immediately follows
 *   this structure.  Set up for 128 or 256 character fonts.
 */
typedef struct t2 {
   chardesctype *chardesc ;
   struct t2 *next ;
   halfword dpi, loadeddpi ;
   halfword alreadyscaled, virtual ;
   int maxchars, id ;
   struct resfont *resfont ;
   struct fontmap *localfonts ;
   char name[4] ;
} fontdesctype ;
/*
 *   A TeXfontdesctype describes a TeX font, which contains a pointer
 *   to a fontdesc.  The name is again located in the string pool.
 *   These are allocated as they are needed; they are 1048 bytes long.
 *   The name immediately follows this structure.
 */
typedef struct tfdt {
   fontdesctype *loaded ;
   struct tfdt *next ;
   integer checksum, designsize, scaledsize, thinspace, origssize ;
   integer scaledwidth[256] ;
   integer wanteddpi ;
   char name[4] ;
} TeXfontdesctype ;

/*  A fontmap associates a fontdesc with a font number.
 */
typedef struct fontmap {
   integer fontnum ;
   TeXfontdesctype *tdesc ;
   struct fontmap *next ;
} fontmaptype ;
/*   Virtual fonts require a `macro' capability that is implemented by
 *   using a stack of `frames'. 
 */
typedef struct {
   quarterword *curp, *curl ;
   TeXfontdesctype *tfnt ;
   fontdesctype *curf ;
   fontmaptype *ff ;
} frametype ;
/*
 *   Crude, crude hack; why is this necessary?
 */
extern int _filbuf() ;
/*
 *   This is the structure definition for resident fonts.  We use
 *   a small and simple hash table to handle these.  We don't need
 *   a big hash table.
 */
#define RESHASHPRIME (23)
struct resfont {
   char *Keyname, *PSname, *TeXname ;
   char *specialinstructions ;
   char *downloadheader ;
   struct resfont *next ;
   quarterword sent ;
} ;
#define DEBUG
#define getenv mgetenv

#define pkpath kpse_pk_format
#define tfmpath kpse_tfm_format
#define vfpath kpse_vf_format
#define configpath kpse_dvips_config_format
#define headerpath kpse_dvips_header_format
#define inputspath kpse_pict_format

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.