|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T t
Length: 39256 (0x9958) Types: TextFile Names: »testc1.h«
└─⟦db229ac7e⟧ Bits:30007240 EUUGD20: SSBA 1.2 / AFW Benchmarks └─⟦this⟧ »EUUGD20/AFUU-ssba1.21/ssba1.21E/testc/testc1.h« └─⟦this⟧ »EUUGD20/AFUU-ssba1.21/ssba1.21F/testc/testc1.h«
/*---------------------------------------------------------------------*/ /* GKS ENUMERATION TYPEDEFs */ /* Gacf attribute control flag */ typedef enum { GCURRENT, GSPECIFIED } Gacf; /* Gasf aspect source flag */ typedef enum { GBUNDLED, GINDIVIDUAL } Gasf; /* Gattrs attributes used */ typedef enum { GPOLYLINE, GPOLYMARKER, GTEXT, GFILLAREA } Gattrs; /* Gclip clipping indicator */ typedef enum { GCLIP, GNOCLIP } Gclip; /* Gclrflag clear control flag */ typedef enum { GCONDITIONALLY, GALWAYS } Gclrflag; /* Gcoavail color availability */ typedef enum { GCOLOUR, GMONOCHROME } Gcoavail; /* Gcovalid color values valid */ typedef enum { GABSENT, GPRESENT } Gcovalid; /* Gcstat choice status */ typedef enum { GC_OK, GC_NOCHOICE, GC_NONE } Gcstat; /* Gcsw coordinate switch */ typedef enum { GWC, GNDC } Gcsw; /* Gdefmode deferral mode */ typedef enum { GASAP, GBNIG, GBNIL, GASTI } Gdefmode; /* Gdevunits device coordinate units */ typedef enum { GDC_METRES, GDC_OTHER } Gdevunits; /* Gdspsurf display surface */ typedef enum { GEMPTY, GNOTEMPTY } Gdspsurf; /* Gesw echo switch */ typedef enum { GECHO, GNOECHO } Gesw; /* Gflinter fill area interior style */ typedef enum { GHOLLOW, GSOLID, GPATTERN, GHATCH } Gflinter; /* Giclass input class */ typedef enum { GNCLASS, GLOCATOR, GSTROKE, GVALUATOR, GCHOICE, GPICK, GSTRING } Giclass; /* Gimode input mode */ typedef enum { GREQUEST, GSAMPLE, GEVENT } Gimode; /* Ginqtype inquiry type */ typedef enum { GSET, GREALIZED } Ginqtype; /* Girgmode implicit regeneration mode */ typedef enum { GSUPPRESSED, GALLOWED } Girgmode; /* Gistat input status */ typedef enum { GOK, GNONE } Gistat; /* Glastev last event */ typedef enum { GLAST, GNOTLAST } Glastev; /* Glevel level of GKS */ typedef enum { GLMA = -3, GLMB, GLMC, GL0A, GL0B, GL0C, GL1A, GL1B, GL1C, GL2A, GL2B, GL2C } Glevel; /* Gmodtype dynamic modification type */ typedef enum { GIRG, GIMM } Gmodtype; /* Gnframe new frame action at update */ typedef enum { GNO, GYES } Gnframe; /* Gopst GKS operating state */ typedef enum { GGKCL, GGKOP, GWSOP, GWSAC, GSGOP } Gopst; /* Gpfcf polyline / fill area control flag */ typedef enum { GPF_POLYLINE, GPF_FILLAREA } Gpfcf; /* Gprflag prompt flag */ typedef enum { GPROFF, GPRON } Gprflag; /* Gpstat pick status */ typedef enum { GP_OK, GP_NOPICK, GP_NONE } Gpstat; /* Gregen regeneration flag */ typedef enum { GPERFORM, GPOSTPONE } Gregen; /* Gsegdet segment detectability */ typedef enum { GUNDETECTABLE, GDETECTABLE } Gsegdet; /* Gseghi segment highlighting */ typedef enum { GNORMAL, GHIGHLIGHTED } Gseghi; /* Gsegvis segment visibility */ typedef enum { GVISIBLE, GINVISIBLE } Gsegvis; /* Gsimultev simultaneous events */ typedef enum { GNOMORE, GMORE } Gsimultev; /* Gtxhor text alignment horizontal component */ typedef enum { GAH_NORMAL, GAH_LEFT, GAH_CENTRE, GAH_RIGHT } Gtxhor; /* Gtxpath text path */ typedef enum { GTP_RIGHT, GTP_LEFT, GTP_UP, GTP_DOWN } Gtxpath; /* Gtxprec text precision */ typedef enum { GP_STRING, GP_CHAR, GP_STROKE } Gtxprec; /* Gtxver text alignment vertical component */ typedef enum { GAV_NORMAL, GAV_TOP, GAV_CAP, GAV_HALF, GAV_BASE, GAV_BOTTOM } Gtxver; /* Gvpri viewport input priority */ typedef enum { GHIGHER, GLOWER } Gvpri; /* Gwscat workstation category */ typedef enum { GOUTPUT, GINPUT, GOUTIN, GWISS, GMO, GMI } Gwscat; /* Gwsclass workstation classification */ typedef enum { GVECTOR, GRASTER, GOTHER } Gwsclass; /* Gwsstate workstation state */ typedef enum { GINACTIVE, GACTIVE } Gwsstate; /* Gwstus workstation transformation update state */ typedef enum { GNOTPENDING, GPENDING } Gwstus; /*----------------------------------------------------------------------------*/ /* GKS GENERIC DATA TYPEDEFs */ /* Gchar character (8 bits minimum) */ typedef char Gchar; /* Gint integer (16 bits minimum) */ typedef long Gint; /* Glong integer (32 bits minimum) */ typedef long Glong; /* Gfloat floating point number (single precision minimum) */ typedef double Gfloat; /* Gfile file */ typedef FILE Gfile; /* Gunint unsigned integer */ typedef unsigned int Guint; /*----------------------------------------------------------------------------*/ /* GKS POINT AND RECTANGLE TYPEDEFS */ /* Gipoint integer point */ typedef struct { Gint x; /* x coordinate */ Gint y; /* y coordinate */ } Gipoint; /* Glimit coordinate limits */ typedef struct { Gfloat xmin; /* x minimum limit */ Gfloat xmax; /* x maximum limit */ Gfloat ymin; /* y minimum limit */ Gfloat ymax; /* y maximum limit */ } Glimit; /* Gpoint coordinate point */ typedef struct { Gfloat x; /* x coordinate */ Gfloat y; /* y coordinate */ } Gpoint; /*----------------------------------------------------------------------------*/ /* Gasfs aspect source flags */ typedef struct { Gasf ln_type; /* line type */ Gasf ln_width; /* line width */ Gasf ln_colour; /* line colour */ Gasf mk_type; /* marker type */ Gasf mk_size; /* marker size */ Gasf mk_colour; /* marker colour */ Gasf tx_fp; /* text font and precision */ Gasf tx_exp; /* text expansion */ Gasf tx_space; /* text spacing */ Gasf tx_colour; /* text colour */ Gasf fl_inter; /* fill area interior style */ Gasf fl_style; /* fill area style index */ Gasf fl_colour; /* fill area colour */ } Gasfs; /* Gchoice choice data */ typedef struct { Gcstat status; /* choice status */ Gint choice; /* choice number */ } Gchoice; /* Gcliprect clipping rectangle */ typedef struct { Gclip ind; /* clipping indicator */ Glimit rec; /* clipping rectangle */ } Gcliprect; /* Gcobundl colour bundle */ typedef struct { Gfloat red; /* red intensity */ Gfloat green; /* green intensity */ Gfloat blue; /* blue intensity */ } Gcobundl; /* Gcofac colour facilities */ typedef struct { Gint colours; /* number of colours */ Gcoavail coavail; /* colour availability */ Gint predefined; /* no. of predefined bundles */ } Gcofac; /* Gdefer deferral state */ typedef struct { Gdefmode defmode; /* deferral mode */ Girgmode irgmode; /* implicit regeneration mode */ } Gdefer; /* Gdim dimensions in real values */ typedef struct { Gfloat x_dim; /* x component */ Gfloat y_dim; /* y component */ } Gdim; /* Gdspsize display size */ typedef struct { Gdevunits units; /* device coordinate units */ Gpoint device; /* device coord unit size */ Gipoint raster; /* raster unit size */ } Gdspsize; /* Gevent event */ typedef struct { Gint ws; /* workstation */ Gint dev; /* device number */ Giclass class; /* event class */ } Gevent; /* Gextent text extent */ typedef struct { Gpoint concat; /* concatenation point */ Gpoint corner_1; /* corner 1 */ Gpoint corner_2; /* corner 2 */ Gpoint corner_3; /* corner 3 */ Gpoint corner_4; /* corner 4 */ } Gextent; /* Gflbundl fill area bundle */ typedef struct { Gflinter inter; /* fill area interior style */ Gint style; /* fill area style index */ Gint colour; /* fill area colour index */ } Gflbundl; /* Gflattr fill area attributes */ typedef struct { Gasf inter; /* fill area interior style ASF */ Gasf style; /* fill area style index ASF */ Gasf colour; /* fill area colour ASF */ Gint fill; /* fill area index */ Gflbundl bundl; /* fill area bundle */ } Gflattr; /* Gintlist integer list */ typedef struct { Gint number; /* number of integers in list */ Gint *integers; /* list of integers */ } Gintlist; /* Gflfac fill area facilities */ typedef struct { Gint n_interiors; /* no. of available interior styles */ Gflinter *interiors; /* list of available interior styles */ Gintlist *hatches; /* list of available hatch styles */ Gint predefined; /* number of predefined bundles */ } Gflfac; /* Ggdpfac GDP facilities */ typedef struct { Gint n_attrs; /* number of attributes used */ Gattrs *attrs; /* list of attributes used */ } Ggdpfac; /* Ggksmit GKS metafile item */ typedef struct { Gint type; /* item type */ Gint length; /* item length */ } Ggksmit; /* Gidim dimensions in integer values */ typedef struct { Guint x_dim; /* x component */ Guint y_dim; /* y component */ } Gidim; /* Gtxfp text font and precision */ typedef struct { Gint font; /* text font */ Gtxprec prec; /* text precision */ } Gtxfp; /* Gindivattr individual attribute values */ typedef struct { Gint ln_type; /* linetype */ Gfloat ln_width; /* linewidth scale factor */ Gint ln_colour; /* line colour index */ Gint mk_type; /* marker type */ Gfloat mk_size; /* marker size */ Gint mk_colour; /* marker colour index */ Gtxfp tx_fontprec; /* text font and precision */ Gfloat ch_exp; /* character expansion factor */ Gfloat ch_space; /* character spacing */ Gint tx_colour; /* text colour index */ Gflinter fl_interior; /* fill area interior */ Gint fl_style; /* fill area interior style */ Gint fl_colour; /* fill area colour index */ Gasfs asfs; /* asf flags */ } Gindivattr; /* Glnbundl polyline bundle */ typedef struct { Gint type; /* line type */ Gfloat width; /* linewidth scale factor */ Gint colour; /* polyline colour index */ } Glnbundl; /* Glnattr polyline attributes */ typedef struct { Gasf type; /* linetype ASF */ Gasf width; /* linewidth ASF */ Gasf colour; /* line colour ASF */ Gint line; /* line index */ Glnbundl bundl; /* line bundle */ } Glnattr; /* Glnfac polyline facilities */ typedef struct { Gintlist *types; Gint widths; /* number of line widths */ Gfloat nom_width; /* nominal width */ Gfloat min_width; /* minimum width */ Gfloat max_width; /* maximum width */ Gint predefined; /* no. of predefined bundles */ } Glnfac; /* Gloc locator data */ typedef struct { Gint transform; /* normalization transformation no. */ Gpoint position; /* locator position */ } Gloc; /* Gmkbundl polymarker bundle */ typedef struct { Gint type; /* marker type */ Gfloat size; /* marker size */ Gint colour; /* marker colour */ } Gmkbundl; /* Gmkattr polymarker attributes */ typedef struct { Gasf type; /* marker type ASF */ Gasf size; /* marker size ASF */ Gasf colour; /* marker colour ASF */ Gint mark; /* marker index */ Gmkbundl bundl; /* marker bundle */ } Gmkattr; /* Gmkfac polymarker facilities */ typedef struct { Gintlist *types; Gint sizes; /* number of marker sizes */ Gfloat nom_size; /* nominal size */ Gfloat min_size; /* minimum size */ Gfloat max_size; /* maximum size */ Gint predefined; /* no. of predefined bundles */ } Gmkfac; /* Gmodseg dynamic modification of segment attributes */ typedef struct { Gmodtype transform; /* transformation */ Gmodtype appear; /* appearing (turning visible) */ Gmodtype disappear; /*disappearing (turning invisible)*/ Gmodtype highlight; /* highlighting */ Gmodtype priority; /* priority */ Gmodtype addition; /* addition of primitives to seg */ Gmodtype deletion; /* deletion of segment */ } Gmodseg; /* Gmodws dynamic modification of workstation attributes */ typedef struct { Gmodtype line; /* polyline */ Gmodtype mark; /* polymarker */ Gmodtype text; /* text */ Gmodtype fill; /* fill area */ Gmodtype pat; /* pattern */ Gmodtype colour; /* color */ Gmodtype wstran; /* workstation transformation */ } Gmodws; /* Gnumdev number of input devices */ typedef struct { Gint locator; /* locators */ Gint stroke; /* strokes */ Gint valuator; /* valuators */ Gint choice; /* choices */ Gint pick; /* picks */ Gint string; /* strings */ } Gnumdev; /* Gpick pick data */ typedef struct { Gpstat status; /* pick status */ Gint seg; /* pick segment */ Gint pickid; /* pick identifier */ } Gpick; /* Gtxalign text alignment */ typedef struct { Gtxhor hor; /* horizontal component */ Gtxver ver; /* vertical component */ } Gtxalign; /* Gprimattr primitive attributes */ typedef struct { Gint ln_index; /* line index */ Gint mk_index; /* marker index */ Gint tx_index; /* text index */ Gfloat ch_height; /* character height */ Gpoint ch_up; /* character up vector */ Gfloat ch_width; /* character width */ Gpoint ch_base; /* character base vector */ Gtxpath tx_path; /* text path */ Gtxalign tx_align; /* text align */ Gint fl_index; /* fill area index */ Gpoint pa_width; /* pattern width */ Gpoint pa_height; /* pattern height */ Gpoint pa_refpt; /* pattern reference point */ } Gprimattr; /* Gptbundl pattern bundle */ typedef struct { Gipoint size; /* pattern array size */ Gint *array; /* pattern array */ } Gptbundl; /* Gqloc request locator */ typedef struct { Gistat status; /* request status */ Gloc loc; /* locator data */ } Gqloc; /* Gqstring request string */ typedef struct { Gistat status; /* request status */ Gchar *string; /* string data */ } Gqstring; /* Gstroke stroke data */ typedef struct { Gint transform; /* normalization transform number*/ Gint n_points; /* number of points in stroke */ Gpoint *points; /* points in stroke */ } Gstroke; /* Gqstroke request stroke */ typedef struct { Gistat status; /* request status */ Gstroke stroke; /* stroke data */ } Gqstroke; /* Gqueue queue information */ typedef struct { Gint ws; /* workstation identifier */ Giclass class; /* event class */ Gint devno; /* logical input device no. */ } Gqueue; /* Gqval request valuator */ typedef struct { Gistat status; /* request status */ Gfloat val; /* valuator data */ } Gqval; /* Grect coordinate rectangle */ typedef struct { Gpoint ul; /* upper left corner */ Gpoint lr; /* lower right corner */ } Grect; /* Gscale scale vector */ typedef struct { Gfloat x_scale; /* x component */ Gfloat y_scale; /* y component */ } Gscale; /* Gsegattr segment attribute values */ typedef struct { Gfloat segtran[2][3]; /* segment transformation */ Gsegvis segvis; /* segment visibility */ Gseghi seghi; /* segment highlighting */ Gfloat segpri; /* segment priority */ Gsegdet segdet; /* segment detectability */ } Gsegattr; /* Gstrlist string list */ typedef struct { Gint n_strings; /* number of strings in list */ Gchar **strings; /* list of strings */ } Gstrlist; /* Gtran transformation */ typedef struct { Glimit w; /* window */ Glimit v; /* viewport */ } Gtran; /* Gtxbundl text bundle */ typedef struct { Gtxfp fp; /* font and precision */ Gfloat exp; /* character expansion */ Gfloat space; /* character spacing */ Gint colour; /* text color */ } Gtxbundl; /* Gtxattr text attributes */ typedef struct { Gasf fp; /* text font and precision ASF */ Gasf exp; /* text character expansion ASF */ Gasf space; /* text character spacing ASF */ Gasf colour; /* text colour ASF */ Gint text; /* text index */ Gtxbundl bundl; /* text bundle */ } Gtxattr; /* Gtxfac text facilities */ typedef struct { Gint fps; /* number of fonts and precisions */ Gtxfp *fp_list; /* list of avail fonts and precisions */ Gint heights; /* number of character heights */ Gfloat min_ht; /* minimum height */ Gfloat max_ht; /* maximum height */ Gint expansions; /* number of char expansion factors */ Gfloat min_exp; /* minimum expansion factor */ Gfloat max_exp; /* maximum expansion factor */ Gint predefined; /* number of predefined bundles */ } Gtxfac; /* Gwsdus workstation deferral and update state */ typedef struct { Gdefmode defmode; /* deferral mode */ Gdspsurf dspsurf; /* display surface */ Girgmode irgmode; /* implicit regeneration mode */ Gnframe nframe; /* new frame action at update */ } Gwsdus; /* Gwsmax workstation maximum numbers */ typedef struct { Gint open; /* number of open workstations */ Gint active; /* number of active workstations */ Gint assoc; /* number of associated workstations */ } Gwsmax; /* Gwstables length of workstation tables */ typedef struct { Gint line; /* polyline tables */ Gint mark; /* polymarker tables */ Gint text; /* text tables */ Gint fill; /* fill area tables */ Gint pat; /* pattern tables */ Gint colour; /* color tables */ } Gwstables; /* Gwsti workstation transformation information */ typedef struct { Gwstus wstus; /* workstn transform update state */ Gtran request; /* requested transformation */ Gtran current; /* current transformation */ } Gwsti; /*------------------------------------------------------------------*/ /* CHOICE DATA TYPE DEFINITIONS */ /* Gchoicepet0001 choice prompt and echo type 1 data record */ typedef struct { Gint number; /* number of choice strings */ Gchar **strings; /* array of strings */ } Gchoicepet0001; /* Gchoicepet0002 choice prompt and echo type 2 data record */ typedef struct { Gint number; /* number of alternatives */ Gprflag *enable; /* array of prompts */ } Gchoicepet0002; /* Gchoicepet0003 choice prompt and echo type 3 data record */ typedef struct { Gint number; /* number of choice strings */ Gchar **strings; /* array of strings */ } Gchoicepet0003; /* Gchoicepet0004 choice prompt and echo type 4 data record */ typedef struct { Gint number; /* number of choice strings */ Gchar **strings; /* array of strings */ } Gchoicepet0004; /* Gchoicepet0005 choice prompt and echo type 5 data record */ typedef struct { Gint seg; /* segment name */ Gint number; /* number of alternatives */ Gint *pickids; /* array of pick identifiers */ } Gchoicepet0005; /* Gchoicerec choice data record */ typedef union { Gchoicepet0001 choicepet1_datarec; Gchoicepet0002 choicepet2_datarec; Gchoicepet0003 choicepet3_datarec; Gchoicepet0004 choicepet4_datarec; Gchoicepet0005 choicepet5_datarec; } Gchoicerec; /* Gchoicest choice state */ typedef struct { Gimode mode; /* mode */ Gesw esw; /* echo switch */ Gchoice choice; /* choice data */ Gint pet; /* prompt and echo type */ Glimit e_area; /* echo area */ Gchoicerec record; /* choice data record */ } Gchoicest; /* Gdefchoice default choice data */ typedef struct { Gint choices; /* maximum number of choices */ Gintlist *pets; Glimit e_area; /* default echo area */ Gchoicerec record; /* default choice data record */ } Gdefchoice; /*---------------------------------------------------------------*/ /* LOCATOR DATA TYPE DEFINITIONS */ /* Glocpet0001 locator prompt and echo type 1 data record */ typedef struct { Gint dummy; /* not used */ } Glocpet0001; /* Glocpet0002 locator prompt and echo type 2 data record */ typedef struct { Gint dummy; /* not used */ } Glocpet0002; /* Glocpet0003 locator prompt and echo type 3 data record */ typedef struct { Gint dummy; /* not used */ } Glocpet0003; /* Glocpet0004 locator prompt and echo type 4 data record */ typedef struct { Gacf acf; /* attribute control flag */ Glnattr ln; /* polyline attributes */ } Glocpet0004; /* Glocpet0005 locator prompt and echo type 5 data record */ typedef struct { Gpfcf pfcf; /* polyline/fill area control flag */ Gacf acf; /* attribute control flag */ union { Glnattr ln; /* line attributes */ Gflattr fl; /* fill area attributes */ } attr; } Glocpet0005; /* Glocpet0006 locator prompt and echo type 6 data record */ typedef struct { Gint dummy; /* not used */ } Glocpet0006; /* Glocrec locator data record */ typedef union { Glocpet0001 locpet1_datarec; Glocpet0002 locpet2_datarec; Glocpet0003 locpet3_datarec; Glocpet0004 locpet4_datarec; Glocpet0005 locpet5_datarec; Glocpet0006 locpet6_datarec; } Glocrec; /* Glocst locator state */ typedef struct { Gimode mode; /* mode */ Gesw esw; /* echo switch */ Gloc loc; /* locator data */ Gint pet; /* prompt and echo type */ Glimit e_area; /* echo area */ Glocrec record; /* locator data record */ } Glocst; /* Gdefloc default locator data */ typedef struct { Gpoint position; /* initial position */ Gintlist *pets; Glimit e_area; /* default echo area */ Glocrec record; /* default locator data rec */ } Gdefloc; /*-----------------------------------------------------------------*/ /* PICK DATA TYPES */ /* Gpickpet0001 pick prompt and echo type 1 data record */ typedef struct { Gint dummy; } Gpickpet0001; /* Gpickpet0002 pick prompt and echo type 2 data record */ typedef struct { Gint dummy; } Gpickpet0002; /* Gpickpet0003 pick prompt and echo type 3 data record */ typedef struct { Gint dummy; } Gpickpet0003; /* Gupickpet0021 pick prompt and echo type 21 data record */ typedef struct { Gint type; /* trap type for pets 21, 22 */ Gfloat trap[2]; /* trap definition in WC */ Gint dcTrap[2]; /* trap definition in DC */ Gfloat trapCenter[2]; /* trap center point in WC */ Gint dcCenter[2]; /* trap center point in DC */ Gchar pickSet; /* pick id set (or single pick id)? */ Gchar center; /* center point for trap specified? */ } Gupickpet0021; /* Gupickpet0022 pick prompt and echo type 22 data record */ typedef struct { Gint type; /* trap type for pets 21, 22 */ Gfloat trap[2]; /* trap definition in WC */ Gint dcTrap[2]; /* trap definition in DC */ Gfloat trapCenter[2]; /* trap center point in WC */ Gint dcCenter[2]; /* trap center point in DC */ Gchar pickSet; /* pick id set (or single pick id)? */ Gchar center; /* center point for trap specified? */ } Gupickpet0022; /* Gpickrec pick data record */ typedef union { Gpickpet0001 pickpet1_datarec; Gpickpet0002 pickpet2_datarec; Gpickpet0003 pickpet3_datarec; Gupickpet0021 pickpet21_datarec; Gupickpet0022 pickpet22_datarec; } Gpickrec; /* Gpickst pick state */ typedef struct { Gimode mode; /* mode */ Gesw esw; /* echo switch */ Gpick pick; /* pick data */ Gint pet; /* prompt and echo type */ Glimit e_area; /* echo area */ Gpickrec record; /* pick data record */ } Gpickst; /* Gdefpick default pick data */ typedef struct { Gintlist *pets; Glimit e_area; /* default echo area */ Gpickrec record; /* default pick data record */ } Gdefpick; /* pick trap types for ArteG prompt/echo types 21 and 22 */ #define NO_TRAP 0 /* pets that don't use trap */ #define CIR_TRAP 1 /* circular pick trap */ #define RECT_TRAP 2 /* rectangular pick trap */ /*----------------------------------------------------------------------*/ /* STRING DATA TYPE DEFINITIONS */ /* Gstringpet0001 string prompt and echo type data record */ typedef struct { Gint bufsiz; Gint position; } Gstringpet0001; /* Gstringrec string data record */ typedef union { Gstringpet0001 stringpet1_datarec; } Gstringrec; /* Gstringst string state */ typedef struct { Gimode mode; /* mode */ Gesw esw; /* echo switch */ Gchar *string; /* string data */ Gint pet; /* prompt and echo type */ Glimit e_area; /* echo area */ Gstringrec record; /* string data record */ } Gstringst; /* Gdefstring default string data */ typedef struct { Gint bufsiz; /* initial buffer size */ Gintlist *pets; Glimit e_area; /* default echo area */ Gstringrec record; /* default stroke data record */ } Gdefstring; /*----------------------------------------------------------------------*/ /* STROKE DATA TYPE DEFINITIONS */ /* Gstrokepet0001 stroke prompt and echo type 1 data record */ typedef struct { Gint bufsiz; /* input buffer size */ Gint editpos; /* editing position */ Gpoint interval; /* x, y interval */ Gfloat time; /* time interval */ } Gstrokepet0001; /* Gstrokepet0002 stroke prompt and echo type 2 data record */ typedef struct { Gint bufsiz; /* input buffer size */ Gint editpos; /* editing position */ Gpoint interval; /* x, y interval */ Gfloat time; /* time interval */ } Gstrokepet0002; /* Gstrokepet0003 stroke prompt and echo type 3 data record */ typedef struct { Gint bufsiz; /* input buffer size */ Gint editpos; /* editing position */ Gpoint interval; /* x, y interval */ Gfloat time; /* time interval */ Gacf acf; /* attribute control flag */ Gmkattr mk; /* marker attributes */ } Gstrokepet0003; /* Gstrokepet0004 stroke prompt and echo type 4 data record */ typedef struct { Gint bufsiz; /* input buffer size */ Gint editpos; /* editing position */ Gpoint interval; /* x, y interval */ Gfloat time; /* time interval */ Gacf acf; /* attribute control flag */ Glnattr ln; /* line attributes */ } Gstrokepet0004; /* Gstrokerec stroke data record */ typedef union { Gstrokepet0001 strokepet1_datarec; Gstrokepet0002 strokepet2_datarec; Gstrokepet0003 strokepet3_datarec; Gstrokepet0004 strokepet4_datarec; } Gstrokerec; /* Gstrokest stroke state */ typedef struct { Gimode mode; /* mode */ Gesw esw; /* echo switch */ Gstroke stroke; /* stroke data */ Gint pet; /* prompt and echo type */ Glimit e_area; /* echo area */ Gstrokerec record; /* stroke data record */ } Gstrokest; /* Gdefstroke default stroke data */ typedef struct { Gint bufsiz; /* buffer size */ Gintlist *pets; Glimit e_area; /* default echo area */ Gstrokerec record; /* default stroke data record */ } Gdefstroke; /*----------------------------------------------------------------------*/ /* VALUATOR DATA TYPE DEFINITIONS */ /* Gvalpet0001 valuator prompt and echo type 1 data record */ typedef struct { Gfloat low; /* low range limit */ Gfloat high; /* high range limit */ } Gvalpet0001; /* Gvalpet0002 valuator prompt and echo type 2 data record */ typedef struct { Gfloat low; /* low range limit */ Gfloat high; /* high range limit */ } Gvalpet0002; /* Gvalpet0003 valuator prompt and echo type 3 data record */ typedef struct { Gfloat low; /* low range limit */ Gfloat high; /* high range limit */ } Gvalpet0003; /* Gvalrec valuator data record */ typedef union { Gvalpet0001 valpet1_datarec; Gvalpet0002 valpet2_datarec; Gvalpet0003 valpet3_datarec; } Gvalrec; /* Gvalst valuator state */ typedef struct { Gimode mode; /* mode */ Gesw esw; /* echo switch */ Gfloat val; /* valuator data */ Gint pet; /* prompt and echo type */ Glimit e_area; /* echo area */ Gvalrec record; /* valuator data record */ } Gvalst; /* Gdefval default valuator data */ typedef struct { Gfloat value; /* initial value */ Gintlist *pets; Glimit e_area; /* default echo area */ Gvalrec record; /* default valuator data rec */ } Gdefval; /*--------------------------------------------------------------------*/ /* WORKSTATION AND METAFILE TYPE DEFINITIONS */ /* Gconn connection identifier */ typedef Gchar Gconn; /* Ggksmrec GKS metafile data record */ typedef Gchar Ggksmrec; /* Gwstype workstation type */ typedef Gchar Gwstype; /* Gwsct workstation connection and type */ typedef struct { Gconn *conn; /* workstation connection */ Gwstype *type; /* workstation type */ } Gwsct; /*--------------------------------------------------------------------*/ /* ESCAPE DATA TYPE DEFINITIONS (NOT USED) */ /* Gescin escape input data record */ /* typedef union { Gesc0001_idatarec esc1_idatarec; Gesc0002_idatarec esc2_idatarec; } Gescin; */ /* Gescout escape output data record */ /* typedef union { Gesc0001_odatarec esc1_odatarec; Gesc0002_odatarec esc2_odatarec; } Gescout; */ /*--------------------------------------------------------------------*/ /* GDP DATA TYPE DEFINITIONS */ /* The following are not currently used in the ArteG C Language binding. See include file `artegks2c.h' for GDPs in the ArteG Objective-C binding. */ /* Ggdp0001_datarec GDP data record */ typedef struct { Gint dummy; } Ggdp0001_datarec; /* Ggdp0002_datarec GDP data record */ typedef struct { Gint dummy; } Ggdp0002_datarec; /* Ggdprec GDP data record */ typedef union { Ggdp0001_datarec gdp1_datarec; Ggdp0002_datarec gdp2_datarec; } Ggdprec; /* added defines for gdp types */ #define CIRCLEGDP 1 #define ELLIPSEGDP 2 /*--------------------------------------------------------------------*/ /* LINETYPE AND MARKER TYPE DEFINITIONS */ #define GLN_SOLID 1 /* solid line */ #define GLN_DASH 2 /* dashed line */ #define GLN_DOT 3 /* dotted line */ #define GLN_DOTDASH 4 /* dashed-dooted line */ #define GMK_POINT 1 /* point */ #define GMK_PLUS 2 /* plus sign */ #define GMK_STAR 3 /* asterisk */ #define GMK_O 4 /* circle */ #define GMK_X 5 /* diagonal cross */ /*--------------------------------------------------------------------*/ /*--------------------------------------------------------------------*/ /* GKS ERROR DEFINES */ /* No Error */ #define E_NO_ERROR 0 /* No error */ /* States */ #define E_NOTGKCL 1 /* GKS not in state GKCL */ #define E_NOTGKOP 2 /* GKS not in state GKOP */ #define E_NOTWSAC 3 /* GKS not in state WSAC */ #define E_NOTSGOP 4 /* GKS not in state SGOP */ #define E_NOTACOP 5 /* GKS not in state WSAC or SGOP */ #define E_NOTOPAC 6 /* GKS not in state WSOP or WSAC */ #define E_NOTWSOP 7 /* GKS not in state WSOP, WSAC, or SGOP */ #define E_NOTGWWS 8 /* GKS not in state GKOP, WSOP, WSAC or SGOP */ /* Workstations */ #define E_WSIDINV 20 /* Specified wkstn id is invalid */ #define E_CNIDINV 21 /* Specified connection id is invalid */ #define E_WSTPINV 22 /* Specified wkstn type is invalid */ #define E_NOWSTYP 23 /* Specified wkstn type does not exist */ #define E_WSISOPN 24 /* Specified wkstn is open */ #define E_WSNOTOP 25 /* Specified wkstn not open */ #define E_WSCNTOP 26 /* Specified wkstn cannot be opened */ #define E_WISSNOP 27 /* WISS not open */ #define E_WISSOPN 28 /* WISS is already open */ #define E_WSISACT 29 /* Wkstn is active */ #define E_WSNTACT 30 /* Wkstn not active */ #define E_WSCATMO 31 /* Wkstn is of category MO */ #define E_WSNOTMO 32 /* Wkstn not of category MO */ #define E_WSCATMI 33 /* Wkstn is of category MI */ #define E_WSNOTMI 34 /* Wkstn not of category MI */ #define E_WSCATIN 35 /* Wkstn is of category INPUT */ #define E_WSIWISS 36 /* Wkstn is WISS */ #define E_WSNOTOI 37 /* Wkstn not of category OUTIN */ #define E_WSNOTIO 38 /* Wkstn not INPUT nor OUTIN */ #define E_WSNOTOO 39 /* Wkstn not OUTPUT nor OUTIN */ #define E_WSNOPXL 40 /* Wkstn has no pixel readback capability */ #define E_WSNOGDP 41 /* Wkstn type unable to generate this GDP */ #define E_WSMXOPN 42 /* Max # of simultaneously open WS exceeded */ #define E_WSMXACT 43 /* Max # of simultaneously active WS exceeded */ /* Transformations */ #define E_BADXFRM 50 /* Transformation number is invalid */ #define E_BADRCTD 51 /* Rectangle definition is invalid */ #define E_BDVIEWP 52 /* Viewport not within NDC */ #define E_BDWINDW 53 /* Wkstn window not within NDC */ #define E_VIEWDSP 54 /* Wkstn viewport not within display space */ /* Output Attributes */ #define E_BADLINX 60 /* Polyline index is invalid */ #define E_NOLINEX 61 /* Polyline index not defined on this wkstn */ #define E_NOPLINX 62 /* Polyline index not predefined on this ws */ #define E_LINEEQZ 63 /* Linetype is equal to zero */ #define E_NOLINTP 64 /* Linetype not supported on this wkstn */ #define E_LNWDLTZ 65 /* Linewidth scale factor is less than zero */ #define E_BADMRKX 66 /* Polymarker index is invalid */ #define E_NOMARKX 67 /* Polymarker index not defined on this wkstn */ #define E_NOPMRKX 68 /* Polymarker index not predefined on this ws */ #define E_MARKEQZ 69 /* Marker type is equal to zero */ #define E_NOMRKTP 70 /* Marker type not supported on this wkstn */ #define E_MKSZLTZ 71 /* Marker size scale factor is less than zero */ #define E_BADTXTX 72 /* Text index is invalid */ #define E_NOTEXTX 73 /* Text index not defined on this wkstn */ #define E_NOPTXTX 74 /* Text index not predefined on this wkstn */ #define E_TXTFEQZ 75 /* Text font is equal to zero */ #define E_NOTXTFP 76 /* Text font precision not on this wkstn */ #define E_CEXFLEX 77 /* Char exp factor less than or equal to zero */ #define E_CHHTLEZ 78 /* Char height is less than or equal to zero */ #define E_CHRUPVZ 79 /* Length of character up vector is zero */ #define E_BADFILX 80 /* Fill area index is invalid */ #define E_NOFILLX 81 /* Fill area index not defined on this wkstn */ #define E_NOPFILX 82 /* Fill area index not predefined on this ws */ #define E_NOFSTYL 83 /* Fill area inter style not on this wkstn */ #define E_STYLEQZ 84 /* Style index equal to zero */ #define E_BADPATN 85 /* Specified pattern index is invalid */ #define E_NOHATCH 86 /* Hatch style not supported on this wkstn */ #define E_PATSZLZ 87 /* Pattern size less than or equal to zero */ #define E_NOPATNX 88 /* Pattern index not defined on this wkstn */ #define E_NOPPTNX 89 /* Pattern index not predefined on this wkstn */ #define E_NOPSTYL 90 /* Interior style not supported on this wkstn */ #define E_CADIMEN 91 /* Dimensions of colour array are invalid */ #define E_CINDXLZ 92 /* Colour index is less than zero */ #define E_BADCOLX 93 /* Colour index is invalid */ #define E_NOCOLRX 94 /* Colour index not defined on this wkstn */ #define E_NOPCLRX 95 /* Colour index not predefined on this wkstn */ #define E_COLRNGE 96 /* Colour is outside range (0,1) */ #define E_BADPICK 97 /* Pick id is invalid */ /* Output Primitives */ #define E_NPOINTS 100 /* Number of points is invalid */ #define E_CHRCODE 101 /* Invalid code in string */ #define E_BDGDPID 102 /* GDP id is invalid */ #define E_GDPDATA 103 /* Content of GDP data record is invalid */ #define E_CANTGDP 104 /* Not able to generate the specified GDP */ #define E_CNTGDPC 105 /* Not able to generate the specified GDP under current xforms and clipping rect */ /* Segments */ #define E_BADNAME 120 /* Specified segment name is invalid */ #define E_NAMUSED 121 /* Specified segment name is already in use */ #define E_WHATSEG 122 /* Specified segment does not exist */ #define E_WORKSEG 123 /* Specified segment not on specified wkstn */ #define E_WISSSEG 124 /* Specified segment does not exist on WISS */ #define E_SEGOPEN 125 /* Specified segment is open */ #define E_SEGPRIR 126 /* Segment priority is outside range (0,1) */ /* Input */ #define E_NOINDEV 140 /* Specified input device not on wkstn */ #define E_REQUEST 141 /* Input device not in REQUEST mode */ #define E_NSAMPLE 142 /* Input device not in SAMPLE mode */ #define E_NOEVSMP 143 /* EVENT and SAMPLE not at this level of GKS */ #define E_NOPETWS 144 /* Prompt and echo type not on this wkstn */ #define E_EBOUNDS 145 /* Echo area is outside display space */ #define E_BADDATA 146 /* Contents of input data record are invalid */ #define E_INQOVFL 147 /* Input queue has overflowed */ #define E_NOQOVFL 148 /* Input queue has not overflowed */ #define E_ASWSCLO 149 /* Input queue has overflowed, but wkstn closed */ #define E_NOCURIV 150 /* No input of correct class in event report */ #define E_INVTOUT 151 /* Timeout is invalid */ #define E_BDINITV 152 /* Initial value is invalid */ #define E_STROKSZ 153 /* Number of pts in initial stroke too big */ #define E_STRINSZ 154 /* Length of initial string too big */ /* Metafiles */ #define E_RESERVE 160 /* Item type not allowed for user items */ #define E_BDLNGTH 161 /* Item length is invalid */ #define E_MNOITEM 162 /* No item is left in GKS metafile input */ #define E_MITMINV 163 /* Metafile item is invalid */ #define E_NOTGKSI 164 /* ITEM type not a valid GKS item */ #define E_BADCNTS 165 /* Item data record is invalid */ #define E_EBDMXDR 166 /* Maximum item data record length is invalid */ #define E_INTERPT 167 /* User item cannot be interpreted */ #define E_NOFUNCT 168 /* Speced function not supported at this level*/ /* Escape */ #define E_NOESCFN 180 /* Specified escape function not supported */ #define E_SCIDINV 181 /* Specified escape function id is invalid */ #define E_ESCDATA 182 /* Contents of escape data record are invalid */ /* Miscellaneous */ #define E_BDERRFL 200 /* Specified error file in invalid */ /* Implementation Dependent - GKS Defined */ #define E_MEMSPAC 300 /* Storage overflow has occurred in GKS */ #define E_SEGSPAC 301 /* Storage overflow in segment storage */ #define E_IO_READ 302 /* I/O error while reading */ #define E_IOWRITE 303 /* I/O error while writing */ #define E_IOSENDD 304 /* I/O error sending data to a wkstn */ #define E_IORECDA 305 /* I/O error receiving data from a wkstn */ #define E_IOLIBMG 306 /* I/O error during program library mgt */ #define E_IORDWDT 307 /* I/O error reading wkstn description table */ #define E_MATHERR 308 /* Arithmetic error */ /* Implementation Dependent - Implementor Defined */ #define E_SGMMWRF 910 /* Segment memory write failure */ #define E_SGMMRDF 911 /* Segment memory read failure */ #define E_SGMMNAC 912 /* Segment memory not allocated */ #define E_SSLALOC 913 /* Segment state list alloc failure */ #define E_SSLDLOC 914 /* Segment state list dealloc failure */ #define E_SSLREAD 915 /* Segment Sate list read failure */ #define E_WSSLALC 916 /* Workstation segment alloc failure */ #define E_SGTBLALC 917 /* Segment table alloc failure */ #define E_SGTBLDLC 918 /* Segment table dealloc failure */ #define E_SGTBLRD 919 /* Segment table read failure */ #define E_PRTBALC 920 /* Primitive table alloc failure */ #define E_PRTBDLC 922 /* Primitive table dealloc failure */ #define E_PRTBLRD 923 /* Primitive table read failure */ #define E_PRIMALC 924 /* Primitive alloc failure */ #define E_PRIMDLC 925 /* Primitive dealloc failure */ #define E_NTPREVU 926 /* Normal xform number previously used */ #define E_RADNOS 927 /* Radial grid unsupported */ #define E_SURNOS 928 /* Surface grid unsupported */ #define E_WEIRD 929 /* Weird state, should not have happened */ #define E_PARACLS 930 /* Parabola is closed */ #define E_NTUSED 931 /* Normalization transform already used */ #define E_NMSTINV 932 /* Name set is invalid */ #define E_INUMFTR 933 /* Invalid number of filters specified */ #define E_FLTRINV 934 /* Filter is invalid */ #define E_NYETIMP 998 /* Not yet implemented */ #define E_IMPERRO 999 /* Implementation error */ #define E_BUFSPAC 2200 /* Buffer overflow on input or inquiry funct */ #define E_RRLOGMT 2201 /* Error log is empty */ #define E_OUTRANG 2202 /* Out of range */