void pinq_choice_st3(
Pint ws_id, /* workstation identifier */ Pint choice_dev, /* choice device number */ 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 */ Pin_status *init_status, /* (out) initial choice status */ Pint *init_choice, /* (out) initial choice */ Pint *prompt_echo, /* (out) prompt/echo type */ Plimit3 *echo_volume, /* (out) echo volume */ Pchoice_data3 **choice_data_rec /* (out) data record */
)
typedef void * Pstore;
typedef enum {
POP_REQ,
POP_SAMPLE,
POP_EVENT
} Pop_mode;
typedef enum {
PSWITCH_NO_ECHO,
PSWITCH_ECHO
} Pecho_switch;
typedef enum {
PIN_STATUS_NONE,
PIN_STATUS_OK,
PIN_STATUS_NO_IN
} Pin_status;
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 Pchoice3_pets {
struct Pchoice3_pet_r1 {
Pint num_prompts; /* number of prompts */
Ppr_switch prompts[P_NBCHOICE-1];
char *strings[P_NBCHOICE];
} pet_r1;
struct Pchoice3_pet_r2 {
Pint num_prompts; /* number of prompts */
char *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; /* structure identifier */
Pint struct_id; /* number of pick identifiers */
Pint *pick_ids; /* array of pick identifiers */
} pet_r5;
Pint impl_dep;
} pets;
} Pchoice_data3;
The data is read from the workstation state list.