[ Previous |
Next |
Contents |
Glossary |
Home |
Search ]
The graPHIGS Programming Interface: ISO PHIGS Subroutine Reference
Chapter 17. ISO PHIGS C Type and Macro Definitions
/*-------------------------------------------------------------------*/
/* ISO PHIGS C binding type definitions and macro definitions */
/*-------------------------------------------------------------------*/
/* Environmental type definitions */
typedef float Pfloat;
typedef int Pint;
/* Implementation dependent type definitions */
/*--Pchoice_data CHOICE DATA RECORD---------------------------------*/
typedef struct {
union Pchoice_pets {
struct Pchoice_pet_r1 {
Pint number; /* number of whatever */
} pet_r1;
struct Pchoice_pet_r2 {
Pint num_prompts; /* number of prompts */
Ppr_switch *prompts; /* array of prompts */
} pet_r2;
struct Pchoice_pet_r3 {
Pint num_strings; /* number of choice strings */
char **strings; /* array of choice strings */
} pet_r3;
struct Pchoice_pet_r4 {
Pint num_strings; /* number of choice strings */
char **strings; /* array of choice strings */
} pet_r4;
struct Pchoice_pet_r5 {
Pint struct_id; /* structure identifier */
Pint num_pick_ids; /* number of pick identifiers */
Pint *pick_ids; /* array of pick identifiers */
} pet_r5;
} pets;
} Pchoice_data;
/*--Pchoice_data3 CHOICE DATA RECORD 3------------------------------*/
typedef struct {
union Pchoice3_pets {
struct Pchoice3_pet_r1 {
Pint number; /* number of whatever */
} pet_r1;
struct Pchoice3_pet_r2 {
Pint num_prompts; /* number of prompts */
Ppr_switch *prompts; /* array of prompts */
} pet_r2;
struct Pchoice3_pet_r3 {
Pint num_strings; /* number of choice strings */
char **strings; /* array of choice strings */
} pet_r3;
struct Pchoice3_pet_r4 {
Pint num_strings; /* number of choice strings */
char **strings; /* array of choice strings */
} pet_r4;
struct Pchoice3_pet_r5 {
Pint struct_id; /* struct identifier */
Pint num_pick_ids; /* number of pick identifiers */
Pint *pick_ids; /* array of pick identifiers */
} pet_r5;
} pets;
} Pchoice_data3;
/*--Pcolr_rep COLOR REPRESENTATION----------------------------------*/
typedef union {
Prgb rgb; /* Red Green Blue color specification */
Pcieluv cieluv; /* CIE L*U*V* color specification */
Phls hls; /* Hue Lightness Saturation color specificat. */
Phsv hsv; /* Hue Saturation Value color specification. */
Pdata unsupp; /* Color in an unsupported color model */
} Pcolr_rep;
/*--Pescape_in_data ESCAPE INPUT DATA RECORD------------------------*/
typedef union {
struct Pescape_in_r1 {
char *string; /* escape registration dependent */
} escape_in_r1;
} Pescape_in_data;
/*--Pescape_out_data ESCAPE OUT DATA RECORD-------------------------*/
typedef union {
struct Pescape_out_r1 {
char *string; /* escape registration dependent */
} escape_out_r1;
struct Pescape_out_r2 {
Pint ws_id; /* workstation identifier */
char *string; /* escape output data record */
} escape_out_r2;
} Pescape_out_data;
/*--Pgdp_data GDP DATA RECORD---------------------------------------*/
typedef union {
struct Pgdp_r1 {
char *string; /* registration dependent */
} gdp_r1;
Pdata unsupp; /* unsupported GDP data record */
} Pgdp_data;
/*--Pgdp_data3 GDP DATA RECORD 3------------------------------------*/
typedef union {
struct Pgdp3_r1 {
char *string; /* registration dependent */
} gdp3_r1;
Pdata unsupp; /* unsupported GDP3 data record */
} Pgdp_data3;
/*--Pgse_data GSE DATA RECORD---------------------------------------*/
typedef union {
struct Pgse_r1 {
char *string; /* registration dependent */
} gse_r1;
Pdata unsupp; /* unsupported GSE data record */
} Pgse_data;
/*--Pitem_data ITEM DATA RECORD-------------------------------------*/
typedef union {
char *string; /* Metafile Records */
Pdata unsupp; /* unsupported Metafile item data */
} Pitem_data;
/*--Ploc_data LOCATOR DATA RECORD-----------------------------------*/
typedef struct {
union Ploc_pets {
struct Ploc_pet_r1 {
Pint number; /* number of whatever */
} pet_r1;
struct Ploc_pet_r2 {
Pint number; /* number of whatever */
} pet_r2;
struct Ploc_pet_r3 {
Pint number; /* number of whatever */
} pet_r3;
struct Ploc_pet_r4 {
Pline_attrs line_attrs; /* polyline attributes */
} pet_r4;
struct Ploc_pet_r5 {
Pline_fill_ctrl_flag line_fill_ctrl_flag; /* control flag */
union Ploc_attrs {
Pline_attrs line_attrs; /* polyline attributes */
Pint_attrs int_attrs; /* interior attributes */
struct Ploc_fill_set {
Pint_attrs int_attrs; /* interior attributes */
Pedge_attrs edge_attrs; /* edge attributes */
} fill_set;
} attrs;
} pet_r5;
struct Ploc_pet_r6 {
Pint number; /* number of whatever */
} pet_r6;
} pets;
} Ploc_data;
/*--Ploc_data3 LOCATOR DATA RECORD 3--------------------------------*/
typedef struct {
union Ploc3_pets {
struct Ploc3_pet_r1 {
Pint number; /* number of whatever */
} pet_r1;
struct Ploc3_pet_r2 {
Pint number; /* number of whatever */
} pet_r2;
struct Ploc3_pet_r3 {
Pint number; /* number of whatever */
} pet_r3;
struct Ploc3_pet_r4 {
Pline_attrs line_attrs; /* polyline attributes */
} pet_r4;
struct Ploc3_pet_r5 {
Pline_fill_ctrl_flag line_fill_ctrl_flag; /* control flag */
union Ploc3_attrs {
Pline_attrs line_attrs; /* polyline attributes */
Pint_attrs int_attrs; /* interior attributes */
struct Ploc3_fill_set {
Pint_attrs int_attrs; /* interior attributes */
Pedge_attrs edge_attrs; /* edge attributes */
} fill_set;
} attrs;
} pet_r5;
struct Ploc3_pet_r6 {
Pint number; /* number of whatever */
} pet_r6;
} pets;
} Ploc_data3;
/*--Ppick_data PICK DATA RECORD-------------------------------------*/
typedef struct {
union Ppick_pets {
struct Ppick_pet_r1 {
char *string; /* implementation dependent */
} pet_r1;
} pets;
} Ppick_data;
/*--Ppick_data3 PICK DATA RECORD 3----------------------------------*/
typedef struct {
union Ppick3_pets {
struct Ppick3_pet_r1 {
char *string; /* implementation dependent */
} pet_r1;
} pets;
} Ppick_data3;
/*--Pstring_data STRING DATA RECORD---------------------------------*/
typedef struct {
Pint in_buf_size;
Pint init_pos;
union Pstring_pets {
struct Pstring_pet_r1 {
char **string; /* implementation dependent */
} pet_r1;
} pets;
} Pstring_data;
/*--Pstring_data3 STRING DATA RECORD 3------------------------------*/
typedef struct {
Pint in_buf_size;
Pint init_pos;
union Pstring3_pets {
struct Pstring3_pet_r1 {
char **string; /* implementation dependent */
} pet_r1;
} pets;
} Pstring_data3;
/*--Pstroke_data STROKE DATA RECORD---------------------------------*/
typedef struct {
Pint in_buf_size; /* input buffer size */
Pint init_pos; /* initial editing position */
Pfloat x_interval; /* x interval */
Pfloat y_interval; /* y interval */
Pfloat time_interval; /* time interval */
union Pstroke_pets {
struct Pstroke_pet_r1 {
char **string; /* implementation dependent */
} pet_r1;
struct Pstroke_pet_r2 {
char **string; /* implementation dependent */
} pet_r2;
struct Pstroke_pet_r3 {
Pmarker_attrs marker_attrs; /* marker attributes */
} pet_r3;
struct Pstroke_pet_r4 {
Pline_attrs line_attrs; /* line attributes */
} pet_r4;
} pets;
} Pstroke_data;
/*--Pstroke_data3 STROKE DATA RECORD 3------------------------------*/
typedef struct {
Pint in_buf_size; /* input buffer size */
Pint init_pos; /* initial editing position */
Pfloat x_interval; /* x interval */
Pfloat y_interval; /* y interval */
Pfloat z_interval; /* z interval */
Pfloat time_interval; /* time interval */
union Pstroke3_pets {
struct Pstroke3_pet_r1 {
char **string; /* implementation dependent */
} pet_r1;
struct Pstroke3_pet_r2 {
char **string; /* implementation dependent */
} pet_r2;
struct Pstroke3_pet_r3 {
Pmarker_attrs marker_attrs; /* marker attributes */
} pet_r3;
struct Pstroke3_pet_r4 {
Pline_attrs line_attrs; /* line attributes */
} pet_r4;
} pets;
} Pstroke_data3;
/*--Pval_data VALUATOR DATA RECORD----------------------------------*/
typedef struct {
Pfloat low_value; /* low value of valuator range */
Pfloat high_value; /* high value of valuator range*/
union Pval_pets {
struct Pval_pet_r1 {
char **string; /* implementation dependent */
} pet_r1;
} pets;
} Pval_data;
/*--Pval_data3 VALUATOR DATA RECORD 3-------------------------------*/
typedef struct {
Pfloat low_value; /* low value of valuator range */
Pfloat high_value; /* high value of valuator range*/
union Pval3_pets {
struct Pval3_pet_r1 {
char **string; /* implementation dependent */
} pet_r1;
} pets;
} Pval_data3;
/* Implementation independent type definitions */
/*--Par_file ARCHIVE FILE-------------------------------------------*/
typedef struct {
Pint id; /* archive file identifier */
char *name; /* archive file name */
} Par_file;
/*--Par_file_list ARCHIVE FILE LIST---------------------------------*/
typedef struct {
Pint num_ar_files; /* number of archive files */
Par_file *ar_files; /* list of archive files */
} Par_file_list;
/*--Par_st ARCHIVE STATE--------------------------------------------*/
typedef enum {
PST_ARCL
PST_AROP
} Par_st;
/*--Pasf ASPECT SOURCE FLAG-----------------------------------------*/
typedef enum {
PASF_BUNDLED
PASF_INDIV
} Pasf;
/*--Paspect ASPECT--------------------------------------------------*/
typedef enum {
PASPECT_LINETYPE
PASPECT_LINEWIDTH
PASPECT_LINE_COLR_IND
PASPECT_MARKER_TYPE
PASPECT_MARKER_SIZE
PASPECT_MARKER_COLR_IND
PASPECT_TEXT_FONT
PASPECT_TEXT_PREC
PASPECT_CHAR_EXPAN
PASPECT_CHAR_SPACE
PASPECT_TEXT_COLR_IND
PASPECT_INT_STYLE
PASPECT_INT_STYLE_IND
PASPECT_INT_COLR_IND
PASPECT_EDGE_FLAG
PASPECT_EDGETYPE
PASPECT_EDGEWIDTH
PASPECT_EDGE_COLR_IND
} Paspect;
/*--Pattrs ATTRIBUTES USED------------------------------------------*/
typedef enum {
PATTR_LINE
PATTR_MARKER
PATTR_TEXT
PATTR_INT
PATTR_EDGE
} Pattrs;
/*--Pcieluv CIE L*U*V*----------------------------------------------*/
typedef struct {
Pfloat cieluv_x; /* x coefficient */
Pfloat cieluv_y; /* y coefficient */
Pfloat cieluv_y_lum; /* y luminance */
} Pcieluv;
/*--Pclip_ind CLIPPING INDICATOR------------------------------------*/
typedef enum {
PIND_NO_CLIP
PIND_CLIP
} Pclip_ind;
/*--Pcolr_avail COLOR AVAILABILITY----------------------------------*/
typedef enum {
PAVAIL_MONOCHR
PAVAIL_COLR
} Pcolr_avail;
/*--Pcolr_facs COLOR FACILITIES-------------------------------------*/
typedef struct {
Pint num_colrs; /* number of colors */
Pcolr_avail colr_avail; /* color availability */
Pint num_pred_inds; /* number of predefined color indexes */
Pcieluv prim_colrs[3]/* primary colors */
} Pcolr_facs;
/*--Pcompose_type COMPOSITION TYPE----------------------------------*/
typedef enum {
PTYPE_PRECONCAT
PTYPE_POSTCONCAT
PTYPE_REPLACE
} Pcompose_type;
/*--Pconf_res CONFLICT RESOLUTION-----------------------------------*/
typedef enum {
PRES_MAINTAIN
PRES_ABANDON
PRES_UPD
} Pconf_res;
/*--Pctrl_flag CONTROL FLAG-----------------------------------------*/
typedef enum {
PFLAG_COND
PFLAG_ALWAYS
} Pctrl_flag;
/*--Pdata DATA------------------------------------------------------*/
typedef struct {
size_t size; /* size of data */
void *data; /* pointer to data */
} Pdata;
/*--Pdc_units DEVICE COORDINATE UNITS-------------------------------*/
typedef enum {
PDC_METRES
PDC_OTHER
} Pdc_units;
/*--Pdefer_mode DEFERRAL MODE---------------------------------------*/
typedef enum {
PDEFER_ASAP
PDEFER_BNIG
PDEFER_BNIL
PDEFER_ASTI
PDEFER_WAIT
} Pdefer_mode;
/*--Pdisp_space_size DISPLAY SPACE SIZE-----------------------------*/
typedef struct {
Pdc_units dc_units; /* device coordinate units */
Pfloat_size size_dc; /* device size in coordinate units */
Pint_size size_raster; /* device size in raster units */
} Pdisp_space_size;
/*--Pdisp_space_size3 DISPLAY SPACE SIZE 3--------------------------*/
typedef struct {
Pdc_units dc_units; /* device coordinate units */
Pfloat_size3 size_dc; /* device volume in coordinate units*/
Pint_size3 size_raster; /* device volume in raster units */
} Pdisp_space_size3;
/*--Pdisp_surf_empty DISPLAY SURFACE EMPTY--------------------------*/
typedef enum {
PSURF_NOT_EMPTY
PSURF_EMPTY
} Pdisp_surf_empty;
/*--Pdyns_structs DYNAMICS OF STRUCTURES----------------------------*/
typedef struct {
Pdyn_mod content; /* structure content */
Pdyn_mod post; /* post structure */
Pdyn_mod unpost; /* unpost structure */
Pdyn_mod del; /* delete structures */
Pdyn_mod ref; /* structure reference */
} Pdyns_structs;
/*--Pdyns_ws_attrs DYNAMICS OF WORKSTATION ATTRIBUTES---------------*/
typedef struct {
Pdyn_mod line_bundle; /* polyline bundle representation */
Pdyn_mod marker_bundle; /* polymarker bundle representatio*/
Pdyn_mod text_bundle; /* text bundle representation */
Pdyn_mod int_bundle; /* interior bundle representation */
Pdyn_mod edge_bundle; /* edge bundle representation */
Pdyn_mod pat_rep; /* pattern representation */
Pdyn_mod colr_rep; /* color representation */
Pdyn_mod view_rep; /* view representation */
Pdyn_mod ws_tran; /* workstation transform */
Pdyn_mod highl_filter; /* highlight filter */
Pdyn_mod invis_filter; /* invisibility filter */
Pdyn_mod hlhsr_mode; /* HLHSR mode */
} Pdyns_ws_attrs;
/*--Pdyn_mod DYNAMIC MODIFICATION-----------------------------------*/
typedef enum {
PDYN_IRG
PDYN_IMM
PDYN_CBS
} Pdyn_mod;
/*--Pecho_switch ECHO SWITCH----------------------------------------*/
typedef enum {
PSWITCH_NO_ECHO
PSWITCH_ECHO
} Pecho_switch;
/*--Pedge_attrs EDGE ATTRIBUTES-------------------------------------*/
typedef struct {
Pasf flag_asf; /* edge flag asf */
Pasf type_asf; /* edge type asf */
Pasf width_asf; /* edge width asf */
Pasf colr_ind_asf; /* edge color index asf */
Pint ind; /* edge index */
Pedge_bundle bundle; /* edge bundle */
} Pedge_attrs;
/*--Pedge_bundle EDGE BUNDLE----------------------------------------*/
typedef struct {
Pedge_flag flag; /* edge flag */
Pint type; /* edgetype */
Pfloat width; /* edgewidth scale factor */
Pint colr_ind; /* edge color index */
} Pedge_bundle;
/*--Pedge_facs EDGE FACILITIES--------------------------------------*/
typedef struct {
Pint_list types; /* list of edge types */
Pint num_widths; /* number of available edge widths */
Pfloat nom_width; /* nominal edge width */
Pfloat min_width; /* min edge width */
Pfloat max_width; /* max edge width */
Pint num_pred_inds; /* number of predefined bundle indexes */
} Pedge_facs;
/*--Pelem_data ELEMENT DATA-----------------------------------------*/
typedef union {
Pint int_data; /* integer valued data */
Pfloat float_data; /* float valued data */
Ppoint_list3 point_list3; /* list of 3d points */
Ppoint_list point_list; /* list of 2d points */
Ppoint_list_list3 point_list_list3; /* list of 3d point lists */
Ppoint_list_list point_list_list; /* list of 2d point lists */
struct Pelem_text3 {
Ppoint3 pos; /* text position */
Pvec3 dir[2] /* direction vectors */
char *char_string; /* char string */
} text3;
struct Pelem_text {
Ppoint pos; /* text position */
char *char_string; /* character string */
} text;
struct Pelem_anno_text_rel3 {
Ppoint3 ref_point; /* reference point */
Pvec3 offset; /* annotation offset */
char *char_string; /* character string */
} anno_text_rel3;
struct Pelem_anno_text_rel {
Ppoint ref_point; /* reference point */
Pvec offset; /* annotation offset */
char *char_string; /* character string */
} anno_text_rel;
struct Pelem_cell_array3 {
Pparal paral; /* parallelogram */
Ppat_rep colr_array; /* color array */
} cell_array3;
struct Pelem_cell_array {
Prect rect; /* rectangle */
Ppat_rep colr_array; /* color array */
} cell_array;
struct Pelem_gdp3 {
Pint id; /* GDP3 id */
Ppoint_list3 point_list; /* point list */
Pgdp_data3 data; /* data record */
} gdp3;
struct Pelem_gdp {
Pint id; /* GDP id */
Ppoint_list point_list; /* point list */
Pgdp_data data; /* data record */
} gdp;
Ptext_prec text_prec; /* text precision */
Pvec char_up_vec; /* character up vector */
Ptext_path text_path; /* text path */
Ptext_align text_align; /* text alignment */
Pint_style int_style; /* interior style */
Pedge_flag edge_flag; /* edge flag */
Ppoint pat_ref_point; /* pattern refer. point */
Pfloat_size pat_size; /* pattern size */
struct Pelem_pat_ref_point_vecs {
Ppoint3 ref_point; /* pattern refer. point */
Pvec3 ref_vec[2] /* vectors */
} pat_ref_point_vecs;
Pint_list names; /* name sets */
struct Pelem_asf {
Paspect id; /* attribute id */
Pasf source; /* attribute source */
} asf;
struct Pelem_local_tran3 {
Pcompose_type compose_type; /* composition type */
Pmatrix3 matrix; /* matrix */
} local_tran3;
struct Pelem_local_tran {
Pcompose_type compose_type; /* composition type */
Pmatrix matrix; /* matrix */
} local_tran;
Pmatrix3 global_tran3; /* global transform3 */
Pmatrix global_tran; /* global transform */
struct Pelem_model_clip3 {
Pint op; /* operator */
Phalf_space_list3 half_spaces; /*half space list*/
} model_clip3;
struct Pelem_model_clip {
Pint op; /* operator */
Phalf_space_list half_spaces; /*half space list*/
} model_clip;
Pclip_ind clip_ind; /* clipping indicator */
Pdata appl_data; /* application data */
struct Pelem_gse {
Pint id; /* GSE id */
Pgse_data data; /* GSE data record */
} gse;
} Pelem_data;
/*--Pelem_ref ELEMENT REFERENCE-------------------------------------*/
typedef struct {
Pint struct_id; /* structure id */
Pint elem_pos; /* element position */
} Pelem_ref;
/*--Pelem_ref_list ELEMENT REFERENCE LIST---------------------------*/
typedef struct {
Pint num_elem_refs; /* number of element references */
Pelem_ref *elem_refs; /* list of element references */
} Pelem_ref_list;
/*--Pelem_ref_list_list ELEMENT REFERENCE LIST LIST-----------------*/
typedef struct {
Pint num_elem_ref_lists; /* no.of element reference lists*/
Pelem_ref_list *elem_ref_lists; /* list of element refer. lists */
} Pelem_ref_list_list;
/*--Pelem_type ELEMENT TYPE-----------------------------------------*/
typedef enum {
PELEM_ALL
PELEM_NIL
PELEM_POLYLINE3
PELEM_POLYLINE
PELEM_POLYMARKER3
PELEM_POLYMARKER
PELEM_TEXT3
PELEM_TEXT
PELEM_ANNO_TEXT_REL3
PELEM_ANNO_TEXT_REL
PELEM_FILL_AREA3
PELEM_FILL_AREA
PELEM_FILL_AREA_SET3
PELEM_FILL_AREA_SET
PELEM_CELL_ARRAY3
PELEM_CELL_ARRAY
PELEM_GDP3
PELEM_GDP
PELEM_LINE_IND
PELEM_MARKER_IND
PELEM_TEXT_IND
PELEM_INT_IND
PELEM_EDGE_IND
PELEM_LINETYPE
PELEM_LINEWIDTH
PELEM_LINE_COLR_IND
PELEM_MARKER_TYPE
PELEM_MARKER_SIZE
PELEM_MARKER_COLR_IND
PELEM_TEXT_FONT
PELEM_TEXT_PREC
PELEM_CHAR_EXPAN
PELEM_CHAR_SPACE
PELEM_TEXT_COLR_IND
PELEM_CHAR_HT
PELEM_CHAR_UP_VEC
PELEM_TEXT_PATH
PELEM_TEXT_ALIGN
PELEM_ANNO_CHAR_HT
PELEM_ANNO_CHAR_UP_VEC
PELEM_ANNO_PATH
PELEM_ANNO_ALIGN
PELEM_ANNO_STYLE
PELEM_INT_STYLE
PELEM_INT_STYLE_IND
PELEM_INT_COLR_IND
PELEM_EDGE_FLAG
PELEM_EDGETYPE
PELEM_EDGEWIDTH
PELEM_EDGE_COLR_IND
PELEM_PAT_SIZE
PELEM_PAT_REF_POINT_VECS
PELEM_PAT_REF_POINT
PELEM_ADD_NAMES_SET
PELEM_REMOVE_NAMES_SET
PELEM_INDIV_ASF
PELEM_HLHSR_ID
PELEM_LOCAL_MODEL_TRAN3
PELEM_LOCAL_MODEL_TRAN
PELEM_GLOBAL_MODEL_TRAN3
PELEM_GLOBAL_MODEL_TRAN
PELEM_MODEL_CLIP_VOL3
PELEM_MODEL_CLIP_VOL
PELEM_MODEL_CLIP_IND
PELEM_RESTORE_MODEL_CLIP_VOL
PELEM_VIEW_IND
PELEM_EXEC_STRUCT
PELEM_LABEL
PELEM_APPL_DATA
PELEM_GSE
PELEM_PICK_ID
} Pelem_type;
/*--Pelem_type_list ELEMENT TYPE LIST-------------------------------*/
typedef struct {
Pint num_elem_types; /* number of element types */
Pelem_type *elem_types; /* list of element types */
} Pelem_type_list;
/*--Perr_mode ERROR MODE--------------------------------------------*/
typedef enum {
PERR_OFF
PERR_ON
} Perr_mode;
/*--Pfilter FILTER--------------------------------------------------*/
typedef struct {
Pint_list incl_set; /* inclusion set */
Pint_list excl_set; /* exclusion set */
} Pfilter;
/*--Pfilter_list FILTER LIST----------------------------------------*/
typedef struct {
Pint num_filters; /* number of filters */
Pfilter *filters; /* list of filters */
} Pfilter_list;
/*--Pfloat_size FLOAT SIZE------------------------------------------*/
typedef struct {
Pfloat size_x; /* x size */
Pfloat size_y; /* y size */
} Pfloat_size;
/*--Pfloat_size3 FLOAT SIZE 3---------------------------------------*/
typedef struct {
Pfloat size_x; /* x size */
Pfloat size_y; /* y size */
Pfloat size_z; /* z size */
} Pfloat_size3;
/*--Pgse_id_dep GSE IDENTIFIER DEPENDENCY---------------------------*/
typedef struct {
Pint id; /* GSE identifier */
Pws_dep_ind ind; /* WS independent/dependent indicator*/
} Pgse_id_dep;
/*--Pgse_id_dep_list GSE IDENTIFIER DEPENDENCY LIST-----------------*/
typedef struct {
Pint num_id_facs; /* # of identifiers/dependency element*/
Pgse_id_dep *id_facs; /* list of GSE facilities */
} Pgse_id_dep_list;
/*--Phalf_space HALF SPACE------------------------------------------*/
typedef struct {
Ppoint point; /* point */
Pvec norm; /* normal */
} Phalf_space;
/*--Phalf_space3 HALF SPACE 3---------------------------------------*/
typedef struct {
Ppoint3 point; /* point */
Pvec3 norm; /* normal */
} Phalf_space3;
/*--Phalf_space_list HALF SPACE LIST--------------------------------*/
typedef struct {
Pint num_half_spaces; /* number of half spaces */
Phalf_space *half_spaces; /* list of half spaces */
} Phalf_space_list;
/*--Phalf_space_list3 HALF SPACE LIST 3-----------------------------*/
typedef struct {
Pint num_half_spaces; /* number of half spaces */
Phalf_space3 *half_spaces; /* list of half spaces */
} Phalf_space_list3;
/*--Phls HUE LIGHTNESS SATURATION-----------------------------------*/
typedef struct {
Pfloat hue; /* hue */
Pfloat lightness; /* lightness */
Pfloat satur; /* saturation */
} Phls;
/*--Phor_text_align HORIZONTAL TEXT ALIGNMENT-----------------------*/
typedef enum {
PHOR_NORM
PHOR_LEFT
PHOR_CTR
PHOR_RIGHT
} Phor_text_align;
/*--Phsv HUE SATURATION VALUE---------------------------------------*/
typedef struct {
Pfloat hue; /* hue */
Pfloat satur; /* saturation */
Pfloat value; /* value */
} Phsv;
/*--Pinq_type INQUIRE TYPE------------------------------------------*/
typedef enum {
PINQ_SET
PINQ_REALIZED
} Pinq_type;
/*--Pint_attrs INTERIOR ATTRIBUTES----------------------------------*/
typedef struct {
Pasf style_asf; /* interior asf */
Pasf style_ind_asf; /* interior style asf */
Pasf colr_ind_asf; /* interior color index asf */
Pint ind; /* interior index */
Pint_bundle bundle; /* interior bundle */
} Pint_attrs;
/*--Pint_bundle INTERIOR BUNDLE-------------------------------------*/
typedef struct {
Pint_style style; /* interior style */
Pint style_ind; /* interior style index */
Pint colr_ind; /* interior color index */
} Pint_bundle;
/*--Pint_facs INTERIOR FACILITIES-----------------------------------*/
typedef struct {
Pint num_int_styles; /* number of interior styles */
Pint_style int_styles[5] /* list of available interior styles */
Pint_list hatch_styles; /* list of available hatch styles */
Pint num_pred_inds; /* no. of predefined bundle indexes */
} Pint_facs;
/*--Pint_list INTEGER LIST------------------------------------------*/
typedef struct {
Pint num_ints; /* number of Pints in list */
Pint *ints; /* list of integers */
} Pint_list;
/*--Pint_size INTEGER SIZE------------------------------------------*/
typedef struct {
Pint size_x; /* x size */
Pint size_y; /* y size */
} Pint_size;
/*--Pint_size3 INTEGER SIZE 3---------------------------------------*/
typedef struct {
Pint size_x; /* x size */
Pint size_y; /* y size */
Pint size_z; /* z size */
} Pint_size3;
/*--Pint_style INTERIOR STYLE---------------------------------------*/
typedef enum {
PSTYLE_HOLLOW
PSTYLE_SOLID
PSTYLE_PAT
PSTYLE_HATCH
PSTYLE_EMPTY
} Pint_style;
/*--Pin_class INPUT CLASS-------------------------------------------*/
typedef enum {
PIN_NONE
PIN_LOC
PIN_STROKE
PIN_VAL
PIN_CHOICE
PIN_PICK
PIN_STRING
} Pin_class;
/*--Pin_status INPUT STATUS-----------------------------------------*/
typedef enum {
PIN_STATUS_NONE
PIN_STATUS_OK
PIN_STATUS_NO_IN
} Pin_status;
/*--Plimit LIMIT----------------------------------------------------*/
typedef struct {
Pfloat x_min; /* x min */
Pfloat x_max; /* x max */
Pfloat y_min; /* y min */
Pfloat y_max; /* y max */
} Plimit;
/*--Plimit3 LIMIT 3-------------------------------------------------*/
typedef struct {
Pfloat x_min; /* x min */
Pfloat x_max; /* x max */
Pfloat y_min; /* y min */
Pfloat y_max; /* y max */
Pfloat z_min; /* z min */
Pfloat z_max; /* z max */
} Plimit3;
/*--Pline_attrs POLYLINE ATTRIBUTES---------------------------------*/
typedef struct {
Pasf type_asf; /* line type asf */
Pasf width_asf; /* line width asf */
Pasf colr_ind_asf; /* line color index asf */
Pint ind; /* line index */
Pline_bundle bundle; /* line bundle */
} Pline_attrs;
/*--Pline_bundle POLYLINE BUNDLE------------------------------------*/
typedef struct {
Pint type; /* line type */
Pfloat width; /* linewidth scale factor */
Pint colr_ind; /* color index */
} Pline_bundle;
/*--Pline_facs POLYLINE FACILITIES----------------------------------*/
typedef struct {
Pint_list types; /* list of line types */
Pint num_widths; /* number of available linewidths */
Pfloat nom_width; /* nominal linewidth */
Pfloat min_width; /* min linewidth */
Pfloat max_width; /* max linewidth */
Pint num_pred_inds; /* no.of predefined bundle indexes*/
} Pline_facs;
/*--Pline_fill_ctrl_flag POLYLINE FILL CONTROL FLAG-----------------*/
typedef enum {
PFLAG_LINE
PFLAG_FILL
PFLAG_FILL_SET
} Pline_fill_ctrl_flag;
/*--Pmarker_attrs MARKER ATTRIBUTES---------------------------------*/
typedef struct {
Pasf type_asf; /* marker type asf */
Pasf size_asf; /*marker style asf */
Pasf colr_ind_asf; /* marker color index asf */
Pint ind; /* marker index */
Pmarker_bundle bundle; /* marker bundle */
} Pmarker_attrs;
/*--Pmarker_bundle POLYMARKER BUNDLE--------------------------------*/
typedef struct {
Pint type; /* marker type */
Pfloat size; /* marker size scale factor */
Pint colr_ind; /* color index */
} Pmarker_bundle;
/*--Pmarker_facs POLYMARKER FACILITIES------------------------------*/
typedef struct {
Pint_list types; /* list of marker types */
Pint num_sizes; /* number of available marker sizes */
Pfloat nom_size; /* nomimal marker size */
Pfloat min_size; /* min marker size */
Pfloat max_size; /* max marker size */
Pint num_pred_inds; /* number of predefined bundle indexes*/
} Pmarker_facs;
/*--Pmatrix MATRIX--------------------------------------------------*/
typedef Pfloat Pmatrix [3][3]
/*--Pmatrix3 MATRIX 3-----------------------------------------------*/
typedef Pfloat Pmatrix3 [4][4]
/*--Pmod_mode MODIFICATION MODE-------------------------------------*/
typedef enum {
PMODE_NIVE
PMODE_UWOR
PMODE_UQUM
} Pmod_mode;
/*--Pmore_simult_events MORE SIMULTANEOUS EVENTS--------------------*/
typedef enum {
PSIMULT_NO_MORE
PSIMULT_MORE
} Pmore_simult_events;
/*--Pnum_in NUMBER OF INPUT DEVICES---------------------------------*/
typedef struct {
Pint loc; /* locators */
Pint stroke; /* strokes */
Pint val; /* valuators */
Pint choice; /* choices */
Pint pick; /* picks */
Pint string; /* strings */
} Pnum_in;
/*--Popen_struct_status OPEN STRUCTURE STATUS-----------------------*/
typedef enum {
PSTRUCT_NONE
PSTRUCT_OPEN
} Popen_struct_status;
/*--Pop_mode OPERATING MODE-----------------------------------------*/
typedef enum {
POP_REQ
POP_SAMPLE
POP_EVENT
} Pop_mode;
/*--Pparal PARALLELOGRAM--------------------------------------------*/
typedef struct {
Ppoint3 p; /* point p */
Ppoint3 q; /* point q */
Ppoint3 r; /* point r */
} Pparal;
/*--PPATH_ORDER PATH ORDER------------------------------------------*/
typedef enum {
PORDER_TOP_FIRST
PORDER_BOTTOM_FIRST
} Ppath_order;
/*--Ppat_rep PATTERN REPRESENTATION---------------------------------*/
typedef struct {
Pint_size dims; /* pattern's dimensions */
Pint *colr_array; /* color index array */
} Ppat_rep;
/*--Ppick_path PICK PATH--------------------------------------------*/
typedef struct {
Pint depth; /* pick path depth */
Ppick_path_elem *path_list; /* pick path list */
} Ppick_path;
/*--Ppick_path_elem PICK PATH ELEMENT-------------------------------*/
typedef struct {
Pint struct_id; /* structure identifier */
Pint pick_id; /* pick identifier */
Pint elem_pos; /* element sequence number */
} Ppick_path_elem;
/*--Ppoint POINT----------------------------------------------------*/
typedef struct {
Pfloat x; /* x coordinate */
Pfloat y; /* y coordinate */
} Ppoint;
/*--Ppoint3 POINT 3------------------------------------------------*/
typedef struct {
Pfloat x; /* x coordinate */
Pfloat y; /* y coordinate */
Pfloat z; /* z coordinate */
} Ppoint3;
/*--Ppoint_list POINT LIST------------------------------------------*/
typedef struct {
Pint num_points; /* number of Ppoints in the list */
Ppoint *points; /* list of points */
} Ppoint_list;
/*--Ppoint_list3 POINT LIST 3---------------------------------------*/
typedef struct {
Pint num_points; /* number of Ppoint3s in the list */
Ppoint3 *points; /* list of points */
} Ppoint_list3;
/*--Ppoint_list_list POINT LIST LIST--------------------------------*/
typedef struct {
Pint num_point_lists; /* number of point lists */
Ppoint_list *point_lists; /* list of point lists */
} Ppoint_list_list;
/*--Ppoint_list_list3 POINT LIST LIST 3-----------------------------*/
typedef struct {
Pint num_point_lists; /* number of point lists */
Ppoint_list3 *point_lists; /* list of point lists */
} Ppoint_list_list3;
/*--Pposted_struct POSTED STRUCTURE---------------------------------*/
typedef struct {
Pint id; /* structure id */
Pfloat disp_pri; /* display priority */
} Pposted_struct;
/*--Pposted_struct_list POSTED STRUCTURE LIST-----------------------*/
typedef struct {
Pint num_postings; /* number of structure postings */
Pposted_struct *postings; /* list of postings */
} Pposted_struct_list;
/*--Pproj_type PROJECTION TYPE--------------------------------------*/
typedef enum {
PTYPE_PARAL
PTYPE_PERSPECT
} Pproj_type;
/*--Ppr_switch PROMPT SWITCH----------------------------------------*/
typedef enum {
PPR_OFF
PPR_ON
} Ppr_switch;
/*--Prect RECTANGLE-------------------------------------------------*/
typedef struct {
Ppoint p; /* point p */
Ppoint q; /* point q */
} Prect;
/*--Pref_flag REFERENCE FLAG----------------------------------------*/
typedef enum {
PFLAG_DEL
PFLAG_KEEP
} Pref_flag;
/*--Pregen_flag REGENERATION FLAG-----------------------------------*/
typedef enum {
PFLAG_POSTPONE
PFLAG_PERFORM
} Pregen_flag;
/*--Prel_pri RELATIVE PRIORITY--------------------------------------*/
typedef enum {
PPRI_HIGHER
PPRI_LOWER
} Prel_pri;
/*--Prgb RED GREEN BLUE---------------------------------------------*/
typedef struct {
Pfloat red;
Pfloat green;
Pfloat blue;
} Prgb;
/*--Psearch_dir SEARCH DIRECTION------------------------------------*/
typedef enum {
PDIR_BACKWARD
PDIR_FORWARD
} Psearch_dir;
/*--Psearch_status SEARCH STATUS------------------------------------*/
typedef enum {
PSEARCH_STATUS_FAILURE
PSEARCH_STATUS_SUCCESS
} Psearch_status;
/*--Pstore STORE----------------------------------------------------*/
typedef void *Pstore;
/*--Pstruct_net_source STRUCTURE NETWORK SOURCE---------------------*/
typedef enum {
PNET_CSS
PNET_AR
} Pstruct_net_source;
/*--Pstruct_st STRUCTURE STATE--------------------------------------*/
typedef enum {
PSTRUCT_ST_STCL
PSTRUCT_ST_STOP
} Pstruct_st;
/*--Pstruct_status STRUCTURE STATUS---------------------------------*/
typedef enum {
PSTRUCT_STATUS_NON_EXISTENT
PSTRUCT_STATUS_EMPTY
PSTRUCT_STATUS_NOT_EMPTY
} Pstruct_status ;
/*--Psys_st SYSTEM STATE--------------------------------------------*/
typedef enum {
PSYS_ST_PHCL
PSYS_ST_PHOP
} Psys_st;
/*--Ptext_align TEXT ALIGNMENT--------------------------------------*/
typedef struct {
Phor_text_align hor; /* horizontal component */
Pvert_text_align vert; /* vertical component */
} Ptext_align;
/*--Ptext_bundle TEXT BUNDLE----------------------------------------*/
typedef struct {
Pint font; /* text font */
Ptext_prec prec; /* text precision */
Pfloat char_expan; /* char expansion factor */
Pfloat char_space; /* character spacing */
Pint colr_ind; /* text color index */
} Ptext_bundle;
/*--Ptext_facs TEXT FACILITIES--------------------------------------*/
typedef struct {
Pint num_font_precs; /* number of fonts and precisions */
Ptext_font_prec *font_precs; /* list of fonts and precisions */
Pint num_char_hts; /* number of character heights */
Pfloat min_char_ht; /* minimum height */
Pfloat max_char_ht; /* maximum height */
Pint num_char_expans; /* # of character expansion factors */
Pfloat min_char_expan; /* minimum expansion factor */
Pfloat max_char_expan; /* maximum expansion factor */
Pint num_pred_inds; /* no. of predefined bundle indexes */
} Ptext_facs;
/*--Ptext_font_prec TEXT FONT AND PRECISION-------------------------*/
typedef struct {
Pint font; /* text font */
Ptext_prec prec; /* text precision */
} Ptext_font_prec;
/*--Ptext_path TEXT PATH--------------------------------------------*/
typedef enum {
PPATH_RIGHT
PPATH_LEFT
PPATH_UP
PPATH_DOWN
} Ptext_path;
/*--Ptext_prec TEXT PRECISION---------------------------------------*/
typedef enum {
PPREC_STRING
PPREC_CHAR
PPREC_STROKE
} Ptext_prec;
/*--Pupd_st UPDATE STATE--------------------------------------------*/
typedef enum {
PUPD_NOT_PEND
PUPD_PEND
} Pupd_st ;
/*--Pvec VECTOR-----------------------------------------------------*/
typedef struct {
Pfloat delta_x; /* delta x value */
Pfloat delta_y; /* delta y value */
} Pvec;
/*--Pvec3 VECTOR 3--------------------------------------------------*/
typedef struct {
Pfloat delta_x; /* delta x value */
Pfloat delta_y; /* delta y value */
Pfloat delta_z; /* delta z value */
} Pvec3;
/*--Pvert_text_align VERTICAL TEXT ALIGNMENT------------------------*/
typedef enum {
PVERT_NORM
PVERT_TOP
PVERT_CAP
PVERT_HALF
PVERT_BASE
PVERT_BOTTOM
}Pvert_text_align;
/*--Pview_map VIEW MAPPING------------------------------------------*/
typedef struct {
Plimit win; /* window limits */
Plimit proj_vp; /* projection viewport limits */
} Pview_map;
/*--Pview_map3 VIEW MAPPING 3---------------------------------------*/
typedef struct {
Plimit win; /* window limits */
Plimit3 proj_vp; /* projection viewport limits */
Pproj_type proj_type; /* projection type */
Ppoint3 proj_ref_point; /* projection reference point */
Pfloat view_plane; /* view plane distance */
Pfloat back_plane; /* back plane distance */
Pfloat front_plane; /* front plane distance */
} Pview_map3;
/*--Pview_rep VIEW REPRESENTATION-----------------------------------*/
typedef struct {
Pmatrix ori_matrix; /* orientation matrix */
Pmatrix map_matrix; /* mapping matrix */
Plimit clip_limit; /* clipping limits */
Pclip_ind xy_clip; /* X-Y clipping indicator */
} Pview_rep;
/*--Pview_rep3 VIEW REPRESENTATION 3--------------------------------*/
typedef struct {
Pmatrix3 ori_matrix; /* orientation matrix */
Pmatrix3 map_matrix; /* mapping matrix */
Plimit3 clip_limit; /* clipping limits */
Pclip_ind xy_clip; /* X-Y clipping indicator */
Pclip_ind back_clip; /* back clipping indicator */
Pclip_ind front_clip; /* front clipping indicator */
} Pview_rep3;
/*--Pvisual_st VISUAL STATE-----------------------------------------*/
typedef enum {
PVISUAL_ST_CORRECT
PVISUAL_ST_DEFER
PVISUAL_ST_SIMULATED
} Pvisual_st;
/*--Pws_cat WORKSTATION CATEGORY------------------------------------*/
typedef enum {
PCAT_OUT
PCAT_IN
PCAT_OUTIN
PCAT_MO
PCAT_MI
} Pws_cat;
/*--Pws_class WORKSTATION CLASS-------------------------------------*/
typedef enum {
PCLASS_VEC
PCLASS_RASTER
PCLASS_OTHER
} Pws_class;
/*--Pws_dep_ind WORKSTATION DEPENDENCY INDICATOR--------------------*/
typedef enum {
PWS_INDEP
PWS_DEP
} Pws_dep_ind;
/*--Pws_st WORKSTATION STATE----------------------------------------*/
typedef enum {
PWS_ST_WSCL
PWS_ST_WSOP
} Pws_st;
/*--Pws_st_tables LENGTH OF WORKSTATION STATE TABLES----------------*/
typedef struct {
Pint line_bundles; /* max.# of polyline table entries*/
Pint mark_bundles; /* max.# of polymarker tbl entries*/
Pint text_bundles; /* max.# of text table entries */
Pint int_bundles; /* max.# of interior table entries*/
Pint edge_bundles; /* max.# of edge table entries */
Pint pat_reps; /* max.# of pattern table entries */
Pint colr_reps; /* max.# of color table entries */
Pint view_reps; /* max.# of view table entries */
} Pws_st_tables;
Function identifiers
/* Function identifiers */
(Ref #1.)
#define Pfn_open_phigs (0)
#define Pfn_close_phigs (1)
#define Pfn_open_ws (2)
#define Pfn_close_ws (3)
#define Pfn_redraw_all_structs (4)
#define Pfn_upd_ws (5)
#define Pfn_set_disp_upd_st (6)
#define Pfn_message (7)
#define Pfn_polyline3 (8)
#define Pfn_polyline (9)
#define Pfn_polymarker3 (10)
#define Pfn_polymarker (11)
#define Pfn_text3 (12)
#define Pfn_text (13)
#define Pfn_anno_text_rel3 (14)
#define Pfn_anno_text_rel (15)
#define Pfn_fill_area3 (16)
#define Pfn_fill_area (17)
#define Pfn_fill_area_set3 (18)
#define Pfn_fill_area_set (19)
#define Pfn_cell_array3 (20)
#define Pfn_cell_array (21)
#define Pfn_gdp3 (22)
#define Pfn_gdp (23)
#define Pfn_set_line_ind (24)
#define Pfn_set_marker_ind (25)
#define Pfn_set_text_ind (26)
#define Pfn_set_int_ind (27)
#define Pfn_set_edge_ind (28)
#define Pfn_set_linetype (29)
#define Pfn_set_linewidth (30)
#define Pfn_set_line_colr_ind (31)
#define Pfn_set_marker_type (32)
#define Pfn_set_marker_size (33)
#define Pfn_set_marker_colr_ind (34)
#define Pfn_set_text_font (35)
#define Pfn_set_text_prec (36)
#define Pfn_set_char_expan (37)
#define Pfn_set_char_space (38)
#define Pfn_set_text_colr_ind (39)
#define Pfn_set_char_ht (40)
#define Pfn_set_char_up_vec (41)
#define Pfn_set_text_path (42)
#define Pfn_set_text_align (43)
#define Pfn_set_anno_char_ht (44)
#define Pfn_set_anno_char_up_vec (45)
#define Pfn_set_anno_path (46)
#define Pfn_set_anno_align (47)
#define Pfn_set_anno_style (48)
#define Pfn_set_int_style (49)
#define Pfn_set_int_style_ind (50)
#define Pfn_set_int_colr_ind (51)
#define Pfn_set_edge_flag (52)
#define Pfn_set_edgetype (53)
#define Pfn_set_edgewidth (54)
#define Pfn_set_edge_colr_ind (55)
#define Pfn_set_pat_size (56)
#define Pfn_set_pat_ref_point_vecs (57)
#define Pfn_set_pat_ref_point (58)
#define Pfn_add_names_set (59)
#define Pfn_remove_names_set (60)
#define Pfn_set_indiv_asf (61)
#define Pfn_set_line_rep (62)
#define Pfn_set_marker_rep (63)
#define Pfn_set_text_rep (64)
#define Pfn_set_int_rep (65)
#define Pfn_set_edge_rep (66)
#define Pfn_set_pat_rep (67)
#define Pfn_set_colr_rep (68)
#define Pfn_set_highl_filter (69)
#define Pfn_set_invis_filter (70)
#define Pfn_set_colr_model (71)
#define Pfn_set_hlhsr_id (72)
#define Pfn_set_hlhsr_mode (73)
#define Pfn_set_local_tran3 (74)
#define Pfn_set_local_tran (75)
#define Pfn_set_global_tran3 (76)
#define Pfn_set_global_tran (77)
#define Pfn_set_model_clip_vol3 (78)
#define Pfn_set_model_clip_vol (79)
#define Pfn_set_model_clip_ind (80)
#define Pfn_restore_model_clip_vol (81)
#define Pfn_set_view_ind (82)
#define Pfn_set_view_rep3 (83)
#define Pfn_set_view_rep (84)
#define Pfn_set_view_tran_in_pri (85)
#define Pfn_set_ws_win3 (86)
#define Pfn_set_ws_win (87)
#define Pfn_set_ws_vp3 (88)
#define Pfn_set_ws_vp (89)
#define Pfn_open_struct (90)
#define Pfn_close_struct (91)
#define Pfn_exec_struct (92)
#define Pfn_label (93)
#define Pfn_appl_data (94)
#define Pfn_gse (95)
#define Pfn_set_edit_mode (96)
#define Pfn_copy_all_elems_struct (97)
#define Pfn_set_elem_ptr (98)
#define Pfn_offset_elem_ptr (99)
#define Pfn_set_elem_ptr_label (100)
#define Pfn_del_elem (101)
#define Pfn_del_elem_range (102)
#define Pfn_del_elems_labels (103)
#define Pfn_empty_struct (104)
#define Pfn_del_struct (105)
#define Pfn_del_struct_net (106)
#define Pfn_del_all_structs (107)
#define Pfn_change_struct_id (108)
#define Pfn_change_struct_refs (109)
#define Pfn_change_struct_id_refs (110)
#define Pfn_post_struct (111)
#define Pfn_unpost_struct (112)
#define Pfn_unpost_all_structs (113)
#define Pfn_open_ar_file (114)
#define Pfn_close_ar_file (115)
#define Pfn_ar_structs (116)
#define Pfn_ar_struct_nets (117)
#define Pfn_ar_all_structs (118)
#define Pfn_set_conf_res (119)
#define Pfn_ret_struct_ids (120)
#define Pfn_ret_structs (121)
#define Pfn_ret_struct_nets (122)
#define Pfn_ret_all_structs (123)
#define Pfn_ret_paths_ances (124)
#define Pfn_ret_paths_descs (125)
#define Pfn_del_structs_ar (126)
#define Pfn_del_struct_nets_ar (127)
#define Pfn_del_all_structs_ar (128)
#define Pfn_set_pick_id (129)
#define Pfn_set_pick_filter (130)
#define Pfn_init_loc3 (131)
#define Pfn_init_loc (132)
#define Pfn_init_stroke3 (133)
#define Pfn_init_stroke (134)
#define Pfn_init_val3 (135)
#define Pfn_init_val (136)
#define Pfn_init_choice3 (137)
#define Pfn_init_choice (138)
#define Pfn_init_pick3 (139)
#define Pfn_init_pick (140)
#define Pfn_init_string3 (141)
#define Pfn_init_string (142)
#define Pfn_set_loc_mode (143)
#define Pfn_set_stroke_mode (144)
#define Pfn_set_val_mode (145)
#define Pfn_set_choice_mode (146)
#define Pfn_set_pick_mode (147)
#define Pfn_set_string_mode (148)
#define Pfn_req_loc3 (149)
#define Pfn_req_loc (150)
#define Pfn_req_stroke3 (151)
#define Pfn_req_stroke (152)
#define Pfn_req_val (153)
#define Pfn_req_choice (154)
#define Pfn_req_pick (155)
#define Pfn_req_string (156)
#define Pfn_sample_loc3 (157)
#define Pfn_sample_loc (158)
#define Pfn_sample_stroke3 (159)
#define Pfn_sample_stroke (160)
#define Pfn_sample_val (161)
#define Pfn_sample_choice (162)
#define Pfn_sample_pick (163)
#define Pfn_sample_string (164)
#define Pfn_await_event (165)
#define Pfn_flush_events (166)
#define Pfn_get_loc3 (167)
#define Pfn_get_loc (168)
#define Pfn_get_stroke3 (169)
#define Pfn_get_stroke (170)
#define Pfn_get_val (171)
#define Pfn_get_choice (172)
#define Pfn_get_pick (173)
#define Pfn_get_string (174)
#define Pfn_write_item (175)
#define Pfn_get_item_type (176)
#define Pfn_read_item (177)
#define Pfn_interpret_item (178)
#define Pfn_set_err_hand_mode (179)
#define Pfn_escape (180)
#define Pfn_set_err_hand (181)
Error codes
/* Error codes */
/* <0 Implementation Dependent Errors */
#define PE_NO_ERROR (0) /* No Error */
/* State Errors */
#define PE_NOT_PHCL (1) /* Ignoring function, function re- */
/* quires state */
/* (PHCL, WSCL, STCL, ARCL) */
#define PE_NOT_PHOP (2) /* Ignoring function, function re- */
/* quires state */
/* (PHOP, *, *, *) */
#define PE_NOT_WSOP (3) /* Ignoring function, function re- */
/* quires state */
/* (PHOP, WSOP, *, *) */
#define PE_NOT_CL (4) /* Ignoring function, function re- */
/* quires state */
/* (PHOP, WSCL, STCL, ARCL) */
#define PE_NOT_STOP (5) /* Ignoring function, function re- */
/* quires state */
/* (PHOP, *, STOP, *) */
#define PE_NOT_STCL (6) /* Ignoring function, function re- */
/* quires state */
/* (PHOP, *, STCL, *) */
#define PE_NOT_AROP (7) /* Ignoring function, function re- */
/* quires state */
/* (PHOP, *, *, AROP) */
/* Workstation Errors */
#define PE_BAD_CONN_ID (50) /* Ignoring function, connection */
/* identifier not recognized by the */
/* implementation */
#define PE_WS_TYPE (51) /* Ignoring function, this informa- */
/* tion is not yet available for */
/* this workstation type; open a */
/* workstation of this type and use */
/* the specific workstation type */
#define PE_BAD_WS_TYPE (52) /* Ignoring function, workstation */
/* type not recognized by the imple-*/
/* mentation */
#define PE_DUP_WS_ID (53) /* Ignoring function, workstation */
/* identifier already in use */
#define PE_WS_NOT_OPEN (54) /* Ignoring function, the specified */
/* workstation is not open */
#define PE_NO_OPEN_WS (55) /* Ignoring function, workstation */
/* can not be opened for an */
/* implementation dependent reason */
#define PE_WS_NOT_MO (56) /* Ignoring function, specified */
/* workstation is not of category MO*/
#define PE_WS_MI (57) /* Ignoring function, specified */
/* workstation is of category MI */
#define PE_WS_NOT_MI (58) /* Ignoring function, specified */
/* workstation is not of category MI*/
#define PE_WS_NO_OUTPUT (59) /* Ignoring function, the specified */
/* workstation does not have output */
/* capability (i.e. the workstation */
/* category is neither OUTPUT, OUTIN*/
/* nor MO) */
#define PE_WS_NOT_OUTIN (60) /* Ignoring function, specified */
/* workstation is not of category */
/* OUTIN */
#define PE_WS_NO_INPUT (61) /* Ignoring function, specified */
/* workstation is neither category */
/* INPUT nor category OUTIN */
#define PE_WS_NOT_OUT (62) /* Ignoring function, specified */
/* workstation is neither category */
/* OUTPUT nor category OUTIN */
#define PE_MAX_WS (63) /* Ignoring function, opening this */
/* workstation would exceed the */
/* maximum number of simultaneously */
/* open workstations */
#define PE_NO_GDP (64) /* Ignoring function, the specified */
/* workstation type is not able to */
/* generate the specified */
/* generalized drawing primitive */
/* Output Attribute Errors */
#define PE_BUN_IND_LT_1 (100) /* Ignoring function, the bundle */
/* index value is less than one */
#define PE_REP_UNDEF (101) /* Ignoring function, the specified */
/* representation has not been */
/* defined. */
#define PE_REP_NOT_PREDEF (102) /* Ignoring function, the specified */
/* representation has not been */
/* predefined on this workstation */
#define PE_MAX_BUN (103) /* Ignoring function, setting this */
/* bundle table entry would exceed */
/* the maximum number of entries */
/* allowed in the workstation bundle*/
/* table */
#define PE_BAD_LINETYPE (104) /* Ignoring function, the specified */
/* linetype is not available on the */
/* specified workstation */
#define PE_BAD_MARKER_TYPE (105) /* Ignoring function, the specified */
/* marker type is not available on */
/* the specified workstation */
#define PE_BAD_FONT (106) /* Ignoring function, the specified */
/* font is not available for the */
/* requested text precision on the */
/* specified workstation */
#define PE_BAD_EDGETYPE (107) /* Ignoring function, the specified */
/* edgetype is not available on the */
/* specified workstation */
#define PE_BAD_INT_STYLE (108) /* Ignoring function, the specified */
/* interior style is not available */
/* on the workstation */
#define PE_NO_PAT (109) /* Ignoring function, interior style*/
/* PATTERN is not supported on the */
/* workstation */
#define PE_BAD_COLR_MODEL (110) /* Ignoring function, the specified */
/* color model is not available on */
/* the workstation */
#define PE_BAD_HLHSR_MODE (111) /* Ignoring function, the specified */
/* HLHSR mode is not available on */
/* the specified workstation */
#define PE_PAT_IND_LT_1 (112) /* Ignoring function, the pattern */
/* index value is less than one */
#define PE_COLR_IND_LT_0 (113) /* Ignoring function, the color */
/* index value is less than zero */
#define PE_VIEW_IND_LT_0 (114) /* Ignoring function, the view index*/
/* value is less than zero */
#define PE_VIEW_IND_LT_1 (115) /* Ignoring function, the view index*/
/* value is less than one */
#define PE_BAD_PAT_DIM (116) /* Ignoring function, one of the */
/* dimensions of pattern color */
/* array is less than one */
#define PE_BAD_COLR_DIM (117) /* Ignoring function, one of the */
/* dimensions of the color index */
/* array is less than zero */
#define PE_BAD_COLR (118) /* Ignoring function, one of the */
/* components of the color specifi- */
/* cation is out of range. The valid*/
/* range is dependent upon the */
/* current color model */
/* Transformations and Viewing Errors */
#define PE_MAX_VIEW (150) /* Ignoring function, setting this */
/* view table entry would exceed */
/* the maximum number of entries */
/* allowed in the workstations */
/* view table */
#define PE_INVALID_WINDOW (151) /* Ignoring function, */
/* invalid window; */
/* XMIN >= XMAX, YMIN >= YMAX or */
/* ZMIN > ZMAX */
#define PE_INVALID_VIEWPORT (152) /* Ignoring function, invalid view-*/
/* port; XMIN >= XMAX, YMIN >= YMAX*/
/* or ZMIN > ZMAX */
#define PE_INVALID_CLIP (153) /* Ignoring function, invalid view */
/* clipping limits; XMIN >= XMAX, */
/* YMIN >= YMAX or ZMIN > ZMAX */
#define PE_BAD_CLIP (154) /* Ignoring function, the view */
/* clipping limits are not within */
/* NPC range */
#define PE_BAD_PROJ_VIEWPORT (155) /* Ignoring function, the projec- */
/* tion viewport limits are not */
/* within NPC range */
#define PE_BAD_WS_WINDOW (156) /* Ignoring function, the */
/* workstation window limits are */
/* not within NPC range */
#define PE_BAD_WS_VIEWPORT (157) /* Ignoring function, the */
/* workstation viewport is not */
/* within display space */
#define PE_BAD_PLANES (158) /* Ignoring function, front plane */
/* and back plane distances are */
/* equal when z-extent of the */
/* projection viewport is zero */
#define PE_BAD_VPN (159) /* Ignoring function, the view */
/* plane normal vector has length */
/* zero */
#define PE_BAD_VUP (160) /* Ignoring function, the view up */
/* vector has length zero */
#define PE_BAD_VUP_VPN (161) /* Ignoring function, the view up */
/* and view plane normal vectors */
/* are parallel thus the viewing */
/* coordinate system cannot be */
/* established */
#define PE_BAD_PRP (162) /* Ignoring function,the projection*/
/* reference point is between the */
/* front and back planes */
#define PE_PRP_VIEW_PLANE (163) /* Ignoring function,the projection*/
/* reference point cannot be posi- */
/* tioned on the view plane */
#define PE_FRONT_BACK (164) /* Ignoring function,the back plane*/
/* is in front of the front plane */
/* Structure Errors */
#define PE_IGNORE_STRUCTS (200) /* Warning, ignoring structures */
/* that do not exist */
#define PE_BAD_STRUCT (201) /* Ignoring function, the specified*/
/* structure does not exist */
#define PE_BAD_ELEMENT (202) /* Ignoring function, the specified*/
/* element does not exist */
#define PE_BAD_PATH (203) /* Ignoring function, specified */
/* starting path not found in CSS */
#define PE_BAD_CEILING_IND (204) /* Ignoring function, specified */
/* search ceiling index out of */
/* range */
#define PE_NO_LABEL (205) /* Ignoring function, the label */
/* does not exist in the open */
/* structure between the element */
/* pointer and the end of the */
/* structure */
#define PE_NO_LABELS (206) /* Ignoring function, one or both */
/* of the labels does not exist in */
/* the open structure between the */
/* element pointer and the end of */
/* the structure */
#define PE_BAD_PATH_DEPTH (207) /* Ignoring function, the specified*/
/* path depth is less than zero (0)*/
#define PE_BAD_DISP_PRI (208) /* Ignoring function, the display */
/* priority is out of range */
/* Input Errors */
#define PE_NO_DEVICE (250) /* Ignoring function, the specified*/
/* device is not available on the */
/* specified workstation */
#define PE_NOT_REQUEST (251) /* Ignoring function, the function */
/* requires the input device to be */
/* in REQUEST mode */
#define PE_NOT_SAMPLE (252) /* Ignoring function, the function */
/* requires the input device to be */
/* in SAMPLE mode */
#define PE_BAD_PET (253) /* Warning, the specified prompt/ */
/* echo type is not available on */
/* the specified workstation. */
/* Prompt/echo type one will be */
/* used in its place */
#define PE_INVALID_ECHO (254) /* Ignoring function, invalid echo */
/* area/volume; XMIN >= XMAX, */
/* YMIN >= YMAX or ZMIN >= ZMAX */
#define PE_BAD_ECHO (255) /* Ignoring function, one of the */
/* echo area/volume boundary points*/
/* is outside the range of the */
/* device */
#define PE_QUEUE_OFLOW (256) /* Warning, the input queue has */
/* overflowed */
#define PE_NO_QUEUE_OFLOW (257) /* Ignoring function, input queue */
/* has not overflowed */
#define PE_OFLOW_NO_GO (258) /* Ignoring function, input queue */
/* has overflowed, but associated */
/* workstation has been closed */
#define PE_BAD_CLASS (259) /* Ignoring function, the input */
/* device class of the current */
/* input report does not match the */
/* class being requested */
#define PE_BAD_DATA_REC (260) /* Ignoring function, one of the */
/* fields within the input device */
/* data record is in error */
#define PE_INVALID_VALUE (261) /* Ignoring function, initial value*/
/* is invalid */
#define PE_STROKE_BUF_SIZE (262) /* Ignoring function, number of */
/* points in the initial stroke is */
/* greater than the buffer size */
#define PE_STRING_BUF_SIZE (263) /* Ignoring function, length of */
/* the initial string is greater */
/* than the buffer size */
/* Metafile Errors */
#define PE_ILLEGAL_ITEM_TYPE (300) /* Ignoring function, item type is*/
/* not allowed for user items */
#define PE_INVALID_ITEM_LENGTH (301) /*Ignoring function, item length*/
/* is invalid */
#define PE_METAFILE_EMPTY (302) /* Ignoring function, no item is */
/* left in metafile input */
#define PE_INVALID_ITEM (303) /* Ignoring function, metafile */
/* item is invalid */
#define PE_BAD_ITEM_TYPE (304) /* Ignoring function, item type is */
/* unknown */
#define PE_BAD_ITEM_REC (305) /* Ignoring function, content of */
/* item data record is invalid for */
/* the specified item type */
#define PE_MAX_ITEM_LENGTH (306) /* Ignoring function, maximum item */
/* data record length is invalid */
#define PE_USER_ITEM (307) /* Ignoring function, user item */
/* can not be interpreted */
/* Escape Errors */
#define PE_ESCAPE_NOT_AVAIL (350) /* Warning, the specified escape */
/* is not available on one or more */
/* workstations in this implemen- */
/* tation. The escape will be */
/* processed by those workstations */
/* on which it is available */
#define PE_BAD_ESCAPE_DATA (351) /* Ignoring fucntion, one of the */
/* fields within the escape data */
/* record is in error */
/* Archival and Retrieval Errors */
#define PE_AR_CANT_OPEN (400) /* Ignoring function, the archive */
/* file cannot be opened */
#define PE_MAX_AR (401) /* Ignoring function, opening */
/* this archive file would exceed */
/* the maximum number of */
/* simultaneously open archive */
/* files */
#define PE_DUP_AR_ID (402) /* Ignoring function, archive */
/* file identifier already in use */
#define PE_BAD_AR (403) /* Ignoring function, the archive */
/* file is not a PHIGS archive */
/* file */
#define PE_AR_NOT_OPEN (404) /* Ignoring function, the speci- */
/* fied archive file is not open */
#define PE_NAME_CONFLICT (405) /* Ignoring function, name con- */
/* flict occurred while conflict */
/* resolution flag has value */
/* ABANDON */
#define PE_AR_FULL (406) /* Warning, the archive file is */
/* full. Any structures that were */
/* archived were archived in */
/* total */
#define PE_AR_NO_STRUCT (407) /* Warning, some of the specified */
/* structures do not exist on the */
/* archive file */
#define PE_AR_NO_STRUCT_EMPTY (408) /* Warning, some of the specified*/
/* structures do not exist on the*/
/* archive file. graPHIGS will */
/* create empty structures in */
/* their places */
/* Miscellaneous Errors */
#define PE_BAD_ERROR_FILE (450) /* Ignoring function, the speci- */
/* fied error file is invalid */
/* System Errors */
#define PE_OFLOW_PHIGS (900) /* Storage overflow has occurred */
/* in PHIGS */
#define PE_OFLOW_CSS (901) /* Storage overflow has occurred */
/* in CSS */
#define PE_IO_ERROR_READ (902) /* Input/Output error has */
/* occurred while reading */
#define PE_IO_ERROR_WRITE (903) /* Input/Output error has */
/* occurred while writing */
#define PE_IO_ERROR_TO_WS (904) /* Input/Output error has */
/* occurred while sending data */
/* to a workstation */
#define PE_IO_ERROR_FROM_WS (905) /* Input/Output error has */
/* occurred while receiving data */
/* from a workstation */
#define PE_IO_ERROR_LIB (906) /* Input/Output error has */
/* occurred during program */
/* library management */
#define PE_IO_ERROR_WDT (907) /* Input/Output error has */
/* occurred while reading work- */
/* station description table */
#define PE_ARITHMETIC_ERROR (908) /* Arithmetic error has occurred */
/* Binding Specific Errors */
#define PE_START_IND_INVAL (2200) /* Ignoring function, start index */
/* is out of range */
#define PE_LIST_LENGTH_LT_ZERO (2201) /* Ignoring function, the */
/* length of the application's */
/* list is negative */
#define PE_ENUM_TYPE_INVAL (2202) /* Ignoring function, enumeration */
/* type is out of range */
#define PE_ALLOC_STORE (2203) /* Ignoring function, error while */
/* allocating a Store */
#define PE_ALLOC_STORE_MEM (2204) /* Ignoring function, error while */
/* allocating memory for a Store */
/* Miscellaneous */
/* Linetypes */
#define PLINE_SOLID (1)
#define PLINE_DASH (2)
#define PLINE_DOT (3)
#define PLINE_DASH_DOT (4)
/* Marker types */
#define PMARKER_DOT (1)
#define PMARKER_PLUS (2)
#define PMARKER_ASTERISK (3)
#define PMARKER_CIRCLE (4)
#define PMARKER_CROSS (5)
/* Annotation styles */
#define PANNO_STYLE_UNCONNECTED (1)
#define PANNO_STYLE_LEAD_LINE (2)
/* Color models */
#define PMODEL_RGB (1)
#define PMODEL_CIELUV (2)
#define PMODEL_HSV (3)
#define PMODEL_HLS (4)
/* Prompt and Echo Types */
#define PLOC_DEF (1)
#define PLOC_CROSS_HAIR (2)
#define PLOC_TRACK_CROSS (3)
#define PLOC_RUB_BAND (4)
#define PLOC_RECT (5)
#define PLOC_DIGIT (6)
#define PSTROKE_DEF (1)
#define PSTROKE_DIGIT (2)
#define PSTROKE_MARKER (3)
#define PSTROKE_LINE (4)
#define PVAL_DEF (1)
#define PVAL_GRAPH (2)
#define PVAL_DIGIT (3)
#define PCHOICE_DEF (1)
#define PCHOICE_PR_ECHO (2)
#define PCHOICE_STRING_PR (3)
#define PCHOICE_STRING_IN (4)
#define PCHOICE_STRUCT (5)
#define PPICK_DEF (1)
#define PPICK_GROUP_HIGHL (2)
#define PPICK_STRUCT_NETWORK (3)
#define PSTRING_DEF (1)
/* Default parameters of Open PHIGS */
#define PDEF_MEM_SIZE ((size_t) (-1))
#define PDEF_ERR_FILE ((char *) (0))
/* Element enumeration */
#define PFIRST_PHIGS_ELEM PELEM_POLYLINE3
#define PLAST_PHIGS_ELEM PELEM_PICK_ID
[ Previous |
Next |
Contents |
Glossary |
Home |
Search ]