void pinq_loc_st(
Pint ws_id, /* workstation identifier */ Pint loc_dev, /* locator device number */ Pinq_type return_type, /* type of returned value */ Pstore store, /* handle to Store object */ Pint *error_ind, /* (out) error indicator */ Pop_mode *mode, /* (out) operating mode */ Pecho_switch *echo_switch, /* (out) echo switch */ Pint *init_view_index, /* (out) initial view index */ Ppoint *init_loc_pos, /* (out) initial locator position */ Pint *prompt_echo, /* (out) prompt/echo type */ Plimit *echo_volume, /* (out) echo volume */ Ploc_data **loc_data_rec /* (out) data record */
)
typedef enum {
PINQ_SET,
PINQ_REALIZED
} Pinq_type ;
typedef void * Pstore;
typedef enum {
POP_REQ,
POP_SAMPLE,
POP_EVENT
} Pop_mode;
typedef enum {
PSWITCH_NO_ECHO,
PSWITCH_ECHO
} Pecho_switch;
typedef struct {
Pfloat x; /* x coordinate */
Pfloat y; /* y coordinate */
} Ppoint;
typedef struct {
Pfloat x_min; /* minimum x */
Pfloat x_max; /* maximum x */
Pfloat y_min; /* minimum y */
Pfloat y_max; /* maximum y */
} Plimit;
typedef struct {
union Ploc_pets {
struct Ploc_pet_r1 {
Pint impl_dep;
} pet_r1;
struct Ploc_pet_r2 {
Pint impl_dep;
} pet_r2;
struct Ploc_pet_r3 {
Pint impl_dep;
} 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 impl_dep;
} pet_r6;
Pint impl_dep;
} pets;
} Ploc_data;
The data is read from the workstation state list.
The memory referenced by *loc_data_rec is managed by store.