pinq_loc_st3(3g) — Subroutines
Name
pinq_loc_st3 − Returns locator device state information.
Operating States: PHOP, WSOP, ∗, ∗
PHIGS standard function
Syntax
void pinq_loc_st3 (
Pint wsid, /∗ (I) Workstation identifier. ∗/
Pint dev_num, /∗ (I) Locator device number. ∗/
Pinq_type return_type, /∗ (I) Type of the returned values. ∗/
Pstore store, /∗ (I) Handle to store the object. store
manages the memory referenced by
∗datarec. ∗/
Pint ∗error_ind, /∗ (O) Error indicator. ∗/
Pop_mode ∗mode, /∗ (O) Operating mode. ∗/
Pecho_switch ∗echo, /∗ (O) Echo switch. ∗/
Pint ∗init_index, /∗ (O) Initial view index. ∗/
Ppoint3 ∗init_pos, /∗ (O) Initial locator position. ∗/
Pint ∗pet, /∗ (O) Prompt and echo type. ∗/
Plimit3 ∗echo_vol, /∗ (O) Echo volume, in device
coordinates. ∗/
Ploc_data3 ∗∗datarec /∗ (O) Locator data record. ∗/
)
Data Structures
typedef enum {
PINQ_SET, /∗ Use the exact state list values. ∗/
PINQ_REALIZED /∗ Use the values approximated by the graphics
handler. ∗/
} Pinq_type;
typedef void ∗Pstore;
typedef enum {
POP_REQ, /∗ request mode ∗/
POP_SAMPLE, /∗ sample mode ∗/
POP_EVENT /∗ event mode ∗/
} Pop_mode;
typedef enum {
PSWITCH_NO_ECHO, /∗ echo disabled ∗/
PSWITCH_ECHO /∗ echo enabled ∗/
} Pecho_switch;
typedef struct {
Pfloat x; /∗ x coordinate ∗/
Pfloat y; /∗ y coordinate ∗/
Pfloat z; /∗ z coordinate ∗/
} Ppoint3;
typedef struct {
Pfloat x_min; /∗ x minimum ∗/
Pfloat x_max; /∗ x maximum ∗/
Pfloat y_min; /∗ y minimum ∗/
Pfloat y_max; /∗ y maximum ∗/
Pfloat z_min; /∗ z minimum ∗/
Pfloat z_max; /∗ z maximum ∗/
} Plimit3;
typedef struct { /∗ locator data record ∗/
union Ploc3_pets {
struct Ploc3_pet_r1 {
Pint impl_dep;
} pet_r1;
struct Ploc3_pet_r2 {
Pint impl_dep;
} pet_r2;
struct Ploc3_pet_r3 {
Pint impl_dep;
} 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 ∗/
Ploc_attrs attrs;
} pet_r5;
struct Ploc3_pet_r6 {
char ∗title_string;
} pet_r6;
struct Ploc3_pet_u1 {
Pfloat box_x; /∗ size of the box in x ∗/
Pfloat box_y; /∗ size of the box in y ∗/
} pet_u1;
struct Ploc3_pet_u2 {
Pline_fill_ctrl_flag line_fill_ctrl_flag; /∗ control flag ∗/
Ploc_attrs attrs;
} pet_u2;
struct Ploc3_pet_u3 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
Ppoint3 point1; /∗ point 1 for echo ∗/
Ppoint3 point2; /∗ point 2 for echo ∗/
} pet_u3;
struct Ploc3_pet_u4 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
} pet_u4;
struct Ploc3_pet_u5 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
} pet_u5;
struct Ploc3_pet_u6 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
Ppoint3 point1; /∗ point 1 for echo ∗/
Ppoint3 point2; /∗ point 2 for echo ∗/
} pet_u6;
struct Ploc3_pet_u7 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
Ppoint3 point1; /∗ point 1 for echo ∗/
Ppoint3 point2; /∗ point 2 for echo ∗/
} pet_u7;
struct Ploc3_pet_u8 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
Ppoint3 point1; /∗ point 1 for echo ∗/
Ppoint3 point2; /∗ point 2 for echo ∗/
} pet_u8;
struct Ploc3_pet_u9 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
} pet_u9;
struct Ploc3_pet_u10 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
} pet_u10;
struct Ploc3_pet_u11 {
Pint impl_dep; /∗ implementation-dependent ∗/
} pet_u11;
struct Ploc3_pet_u12 {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
} pet_u12;
} pets;
} Ploc_data3;
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;
typedef enum {
PASF_BUNDLED, /∗ bundled attributes ∗/
PASF_INDIV /∗ individual attributes ∗/
} Pasf;
typedef struct {
Pint type; /∗ line type ∗/
Pfloat width; /∗ line width scale factor ∗/
Pint colr_ind; /∗ color index ∗/
} Pline_bundle;
typedef enum {
PFLAG_LINE, /∗ polyline ∗/
PFLAG_FILL, /∗ fill area ∗/
PFLAG_FILL_SET /∗ fill area set ∗/
} Pline_fill_ctrl_flag;
typedef union {
Pline_attrs line_attrs; /∗ polyline attributes ∗/
Pint_attrs int_attrs; /∗ interior attributes ∗/
Ploc_fill_set fill_set; /∗ fill area set attributes ∗/
} Ploc_attrs;
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;
typedef struct {
Pint_style style; /∗ interior style ∗/
Pint style_ind; /∗ interior style index ∗/
Pint colr_ind; /∗ interior color index ∗/
} Pint_bundle;
typedef enum {
PSTYLE_HOLLOW, /∗ hollow interior ∗/
PSTYLE_SOLID, /∗ solid interior ∗/
PSTYLE_PAT, /∗ patterned interior ∗/
PSTYLE_HATCH, /∗ hatched interior ∗/
PSTYLE_EMPTY /∗ empty interior ∗/
} Pint_style;
typedef struct {
Pint_attrs int_attrs; /∗ interior attributes ∗/
Pedge_attrs edge_attrs; /∗ edge attributes ∗/
} Ploc_fill_set;
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;
typedef struct {
Pedge_flag flag; /∗ edge flag ∗/
Pint type; /∗ edge type ∗/
Pfloat width; /∗ edge width scale factor ∗/
Pint colr_ind; /∗ edge color index ∗/
} Pedge_bundle;
typedef enum {
PEDGE_OFF, /∗ edges off ∗/
PEDGE_ON /∗ edges on ∗/
} Pedge_flag;
Constants
Data Structure Constants Constant Description
---------------------------------------------------------------------------
Line and edge types PLINE_SOLID Solid line
PLINE_DASH Dashed line
PLINE_DOT Dotted line
PLINE_DOTDASH Dashed-dotted line
PLINE_DASH_2_DOT Dash-2-dots line
PLINE_DASH_3_DOT Dash-3-dots line
PLINE_LONG_DASH Long dashed line
PLINE_LONG_SHORT_DAS Long-short dashed line
PLINE_SPACED_DASH Spaced dashed line
PLINE_SPACED_DOT Spaced dotted line
PLINE_DOUBLE_DOT Double-dotted line
PLINE_TRIPLE_DOT Triple-dotted line
PLINE_CENTER Long line, dash, long
line
PLINE_PHANTOM Long line, two dashes,
long line
---------------------------------------------------------------------------
Description
pinq_loc_st3 queries the workstation state list and returns values for the following:
•Operating mode
•Echo switch value
•Initial view index
•Initial locator position in world coordinates
•Prompt and echo type
•Echo volume in device coordinates
•Locator data record
See Also
pcreate_store
pdel_store
pinit_loc3
pinq_loc_st
pset_loc_mode