1: /* $Header: param.h,v 10.3 86/02/01 15:47:19 tony Rel $ */
   2: /* param.h	Definitions for primitive objects in Workstation Graphics
   3:  *		Architecture
   4:  *
   5:  *	Each object has two definitions.  The more human-readable one
   6:  *	has "reasonable" definitions, the one beginning with a_ expresses
   7:  *	the structure as an array of shorts so that the C compiler doesn't
   8:  *	move it around for silly alignment reasons.
   9:  *
  10:  * Author:	Paul J. Asente
  11:  * 		Digital Equipment Corporation
  12:  * 		Western Reseach Lab
  13:  * Date:	June 1983
  14:  */
  15: 
  16: /****************************************************************************
  17:  *									    *
  18:  *  Copyright (c) 1983, 1984 by						    *
  19:  *  DIGITAL EQUIPMENT CORPORATION, Maynard, Massachusetts.		    *
  20:  *  All rights reserved.						    *
  21:  * 									    *
  22:  *  This software is furnished on an as-is basis and may be used and copied *
  23:  *  only with inclusion of the above copyright notice. This software or any *
  24:  *  other copies thereof may be provided or otherwise made available to     *
  25:  *  others only for non-commercial purposes.  No title to or ownership of   *
  26:  *  the software is hereby transferred.					    *
  27:  * 									    *
  28:  *  The information in this software is  subject to change without notice   *
  29:  *  and  should  not  be  construed as  a commitment by DIGITAL EQUIPMENT   *
  30:  *  CORPORATION.							    *
  31:  * 									    *
  32:  *  DIGITAL assumes no responsibility for the use  or  reliability of its   *
  33:  *  software on equipment which is not supplied by DIGITAL.		    *
  34:  * 									    *
  35:  *									    *
  36:  ****************************************************************************/
  37: 
  38: #ifndef WGA_PARAMS
  39: #define WGA_PARAMS
  40: 
  41: typedef short Constant;
  42: 
  43: typedef struct _Point {
  44:     short p_x;
  45:     short p_y;
  46: } Point;
  47: typedef Point *PointPtr;
  48: 
  49: typedef short a_Point[2];
  50: typedef short a_PointPtr[2];
  51: 
  52: typedef struct _Extent {
  53:     short e_width;
  54:     short e_height;
  55: } Extent;
  56: 
  57: typedef short a_Extent[2];
  58: 
  59: typedef struct _Rectangle {
  60:     a_Point r_origin;
  61:     a_Extent r_size;
  62: } Rectangle;
  63: typedef Rectangle *RectanglePtr;
  64: 
  65: typedef short a_Rectangle[4];
  66: typedef short a_RectanglePtr[2];
  67: 
  68: #define r_x r_origin[0]
  69: #define r_y r_origin[1]
  70: #define r_width r_size[0]
  71: #define r_height r_size[1]
  72: 
  73: typedef struct _RectangleList {
  74:     a_RectanglePtr r_first;
  75:     short r_count;
  76: } RectangleList;
  77: 
  78: typedef short a_RectangleList[3];
  79: 
  80: typedef short BitmapEntry;
  81: typedef BitmapEntry *BitmapEntryPtr;
  82: 
  83: typedef short a_BitmapEntryPtr[2];
  84: 
  85: typedef struct _Bitmap {
  86:     a_BitmapEntryPtr bm_address;
  87:     short bm_width;
  88:     short bm_height;
  89:     short bm_bitsPerPixel;
  90: } BitMap;
  91: 
  92: typedef short a_Bitmap[5];
  93: 
  94: typedef struct _SubBitmap {
  95:     a_Bitmap sb_base;
  96:     a_Point sb_offset;
  97: } SubBitmap;
  98: 
  99: typedef short a_SubBitmap[7];
 100: 
 101: #define sb_address sb_base
 102: #define sb_width sb_base[2]
 103: #define sb_height sb_base[3]
 104: #define sb_bitsPerPixel sb_base[4]
 105: #define sb_x sb_offset[0]
 106: #define sb_y sb_offset[1]
 107: 
 108: typedef struct _Halftone {
 109:     a_Bitmap ht_base;
 110:     a_Point ht_offset;
 111: } Halftone;
 112: 
 113: typedef short a_Halftone[7];
 114: 
 115: #define ht_address ht_base
 116: #define ht_width ht_base[2]
 117: #define ht_height ht_base[3]
 118: #define ht_bitsPerPixel ht_base[4]
 119: #define ht_x ht_offset[0]
 120: #define ht_y ht_offset[1]
 121: 
 122: typedef long Map;
 123: typedef Map *MapPtr;
 124: typedef short a_Map[2];
 125: typedef short a_MapPtr[2];
 126: 
 127: typedef struct _Segment {
 128:     a_Point seg_p;
 129:     short seg_flags;
 130: } Segment;
 131: typedef Segment *SegmentPtr;
 132: 
 133: typedef short a_Segment[3];
 134: typedef short a_SegmentPtr[2];
 135: 
 136: #define seg_x seg_p[0]
 137: #define seg_y seg_p[1]
 138: 
 139: /* Meanings of bits in seg_flags.  Bit on means the predicate is true */
 140: 
 141: #define seg_relative 0x0001
 142: #define seg_dontDraw 0x0002
 143: #define seg_curved 0x0004
 144: #define seg_startClosed 0x0008
 145: #define seg_endClosed 0x0010
 146: #define seg_drawLastPoint 0x0020
 147: 
 148: typedef struct _SegmentList {
 149:     a_SegmentPtr seg_first;
 150:     short seg_count;
 151: } SegmentList;
 152: 
 153: typedef short a_SegmentList[3];
 154: 
 155: typedef struct _PatternString {
 156:     short p_length;
 157:     unsigned short p_pattern;
 158:     short p_multiplier;
 159: } PatternString;
 160: 
 161: typedef short a_PatternString[3];
 162: 
 163: typedef struct _PatternState {
 164:     short p_position;
 165:     short p_count;
 166: } PatternState;
 167: typedef PatternState *PatternStatePtr;
 168: 
 169: typedef short a_PatternState[2];
 170: typedef short a_PatternStatePtr[2];
 171: 
 172: typedef short FontWidthEntry;
 173: typedef FontWidthEntry *FontWidthEntryPtr;
 174: typedef short a_FontWidthEntryPtr[2];
 175: 
 176: typedef struct _FontData {
 177:     a_Bitmap f_characters;
 178:     short f_firstChar;
 179:     short f_lastChar;
 180:     a_FontWidthEntryPtr f_leftArray;
 181:     short f_baseline;
 182:     short f_spaceIndex;
 183:     short f_fixedWidth;
 184: } FontData;
 185: typedef FontData *FontPtr;
 186: 
 187: typedef short a_FontData[12];
 188: typedef short a_FontPtr[2];
 189: 
 190: typedef char *CharPtr;
 191: typedef short a_CharPtr[2];
 192: 
 193: typedef struct _TextString {
 194:     a_CharPtr t_first;
 195:     short t_count;
 196: } TextString;
 197: 
 198: typedef short a_TextString[3];
 199: 
 200: typedef short ControlElement;
 201: typedef ControlElement *ControlElementPtr;
 202: typedef short a_ControlElementPtr[2];
 203: 
 204: typedef struct _ControlString {
 205:     a_ControlElementPtr c_first;
 206:     short c_count;
 207: } ControlString;
 208: 
 209: typedef short a_ControlString[3];
 210: 
 211: typedef long MemSize;
 212: typedef short a_MemSize[2];
 213: 
 214: typedef struct _MemArea {
 215:     a_CharPtr m_base;
 216:     a_MemSize m_size;
 217: } MemArea;
 218: 
 219: typedef short a_MemArea[4];
 220: 
 221: 
 222: 
 223: #endif

Defined struct's

_Bitmap defined in line 85; never used
_ControlString defined in line 204; never used
_Extent defined in line 52; never used
_FontData defined in line 176; never used
_Halftone defined in line 108; never used
_MemArea defined in line 214; never used
_PatternState defined in line 163; never used
_PatternString defined in line 155; never used
_Point defined in line 43; never used
_Rectangle defined in line 59; never used
_RectangleList defined in line 73; never used
_Segment defined in line 127; never used
_SegmentList defined in line 148; never used
_SubBitmap defined in line 94; never used
_TextString defined in line 193; never used

Defined typedef's

BitmapEntry defined in line 80; used 1 times
  • in line 81
BitmapEntryPtr defined in line 81; never used
CharPtr defined in line 190; never used
Constant defined in line 41; never used
ControlElement defined in line 200; used 1 times
ControlElementPtr defined in line 201; never used
ControlString defined in line 207; used 3 times
FontData defined in line 184; used 17 times
FontPtr defined in line 185; never used
FontWidthEntry defined in line 172; used 1 times
FontWidthEntryPtr defined in line 173; never used
Map defined in line 122; used 1 times
MapPtr defined in line 123; never used
MemSize defined in line 211; never used
PatternState defined in line 166; used 2 times
PatternStatePtr defined in line 167; never used
PatternString defined in line 159; used 1 times
PointPtr defined in line 47; never used
Rectangle defined in line 62; used 1 times
  • in line 63
RectanglePtr defined in line 63; never used
Segment defined in line 130; used 1 times
SegmentPtr defined in line 131; never used
TextString defined in line 196; used 3 times
a_Bitmap defined in line 92; used 3 times
a_BitmapEntryPtr defined in line 83; used 1 times
  • in line 86
a_CharPtr defined in line 191; used 2 times
a_ControlElementPtr defined in line 202; used 1 times
a_ControlString defined in line 209; never used
a_Extent defined in line 57; used 1 times
  • in line 61
a_FontData defined in line 187; never used
a_FontPtr defined in line 188; never used
a_FontWidthEntryPtr defined in line 174; used 1 times
a_Halftone defined in line 113; never used
a_Map defined in line 124; never used
a_MapPtr defined in line 125; never used
a_MemArea defined in line 219; never used
a_MemSize defined in line 212; used 1 times
a_PatternState defined in line 169; never used
a_PatternStatePtr defined in line 170; never used
a_PatternString defined in line 161; never used
a_Point defined in line 49; used 4 times
a_PointPtr defined in line 50; never used
a_Rectangle defined in line 65; never used
a_RectangleList defined in line 78; never used
a_RectanglePtr defined in line 66; used 1 times
  • in line 74
a_Segment defined in line 133; never used
a_SegmentList defined in line 153; never used
a_SegmentPtr defined in line 134; used 1 times
a_SubBitmap defined in line 99; never used
a_TextString defined in line 198; never used

Defined macros

WGA_PARAMS defined in line 39; used 1 times
  • in line 38
ht_address defined in line 115; used 6 times
ht_bitsPerPixel defined in line 118; used 2 times
ht_height defined in line 117; used 2 times
ht_width defined in line 116; used 2 times
ht_x defined in line 119; used 4 times
ht_y defined in line 120; used 4 times
r_height defined in line 71; never used
r_width defined in line 70; never used
r_x defined in line 68; never used
r_y defined in line 69; never used
seg_curved defined in line 143; never used
seg_dontDraw defined in line 142; never used
seg_drawLastPoint defined in line 146; never used
seg_endClosed defined in line 145; never used
seg_relative defined in line 141; never used
seg_startClosed defined in line 144; never used
seg_x defined in line 136; never used
seg_y defined in line 137; never used

Usage of this include

Last modified: 1986-02-01
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: 2242
Valid CSS Valid XHTML 1.0 Strict