void pinq_def_loc_data3(
Pint ws_type, /* workstation type */ Pint device, /* logical input device number */ Pstore store, /* handle for Store object */ Pint *error_ind, /* (out) error indicator */ Ppoint3 *loc_pos, /* (out) default locator position */ Pint_list **pets, /* (out) list of prompt/echo type */ Plimit3 *echo, /* (out) echo volume */ Ploc_data3 **loc_data_rec /* (out) data record */
)
typedef void * Pstore;
typedef struct {
Pfloat x; /* x coordinate */
Pfloat y; /* y coordinate */
Pfloat z; /* z coordinate */
} Ppoint3;
typedef struct {
Pint num_ints; /* number of Pints in list */
Pint *ints; /* list of integers */
} Pint_list;
typedef struct {
Pfloat x_min; /* minimum x */
Pfloat x_max; /* maximum x */
Pfloat y_min; /* minimum y */
Pfloat y_max; /* maximum y */
Pfloat z_min; /* minimum z */
Pfloat z_max; /* maximum z */
}Plimit3;
typedef struct {
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 */
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 impl_dep;
} pet_r6;
Pint impl_dep;
} pets;
} Ploc_data3;
The data is read from the workstation description table of type ws_type.
The memory referenced by *loc_data_rec is managed by store.