INQUIRE PICK DEVICE STATE 3(3P) — Kubota Pacfic Computer Inc. (16 August 1991)
NAME
INQUIRE PICK DEVICE STATE 3 − inquire state of a pick device
SYNOPSIS
C Syntax
void
pinq_pick_st3 ( ws, dev, type, store, err, op_mode, echo_switch, filter, init_status, init_pick,
prompt_echo, echo_vol, path_data, pick_order )
Pintws;workstation identifier
Pintdev;pick device number
Pinq_typetype;type of returned value
Pstorestore;handle to store object
Pint∗err;OUT error indicator
Pop_mode∗op_mode;OUT operating mode
Pecho_switch∗echo_switch;OUT echo switch
Pfilter∗∗filter;OUT pick filter
Pin_status∗init_status;OUT initial pick status
Ppick_path∗∗init_pick;OUT initial pick path
Pint∗prompt_echo;OUT prompt/echo type
Plimit3∗echo_vol;OUT echo area
Ppick_data3∗∗pick_data;OUT data record
Ppath_order∗path_order;OUT path order
Required PHIGS Operating States
(PHOP, WSOP, ∗, ∗)
DESCRIPTION
Purpose
Use INQUIRE PICK DEVICE STATE 3 to retrieve the current state of the specified pick device.
C Input Parameters
Applications using the C binding must create a buffer to be used by this function as memory space for storing data associated with the device state. This buffer is passed as the store argument.
The store buffer is a data area managed by PHIGS. While the application is responsible for creating the inital buffer through a call to CREATE STORE, PHIGS manages this area such that there is sufficient memory for the specific inquiry. The pick device data record within the store buffer is accessed by the pointer pointed to by pick_data.
wsWorkstation identifier. An integer specifying the workstation with which the specified pick device is associated.
devThe device number of the pick device. See the Available Devices section of INITIALIZE PICK for a description of the available devices.
typeAn enumerated value specifying whether the values to be returned are those originally specified by the application (PINQ_SET), or those resulting after PHIGS mapped them to ones available on the workstation (PINQ_REALIZED). A Pinq_type structure is defined as:
typedef enum {
PINQ_SET,
PINQ_REALIZED
} Pinq_type;
storeThe memory buffer PHIGS is to use for storing the information returned. This buffer must exist prior to calling this function (see CREATE STORE (3P)).
C Output Parameters
errThe error indicator. See the Execution section below for a description of its use. See the Errors section below for the possible values it may return.
op_mode
The operating mode. Pop_mode is an enumerated type with the following values:
POP_REQ
POP_SAMPLE
POP_EVENT
echo_switch
The echo state. Pecho_switch is an enumerated type with the following values:
PSWITCH_ECHO
PSWITCH_NO_ECHO
filterA pointer to a pointer to the location to store the device’s detectability filter. Pfilter is defined in phigs.h as follows:
typedef struct {
Pint_listincl_set;/∗ inclusion set ∗/
Pint_listexcl_set;/∗ exclusion set ∗/
} Pfilter;
Pint_list is defined in phigs.h as follows:
typedef struct {
Pintnum_ints;/∗ number of Pints in list ∗/
Pint∗ints;/∗ list of integers ∗/
} Pint_list;
init_status
A pointer to the initial pick status. Pin_status is an enumerated type with the following values:
typedef enum {
PIN_STATUS_NONE,
PIN_STATUS_OK,
PIN_STATUS_NO_IN
} Pin_status;
init_pick
A pointer to the initial pick path. Ppick_path is defined in phigs.h as follows:
typedef struct {
Pintdepth;/∗ pick path_list depth ∗/
Ppick_path_elem∗path_list; /∗ pick path ∗/
} Ppick_path;
Ppick_path_elem is defined in phigs.h as follows:
typedef struct {
Pintstruct_id;/∗ structure identifier ∗/
Pintpick_id;/∗ hierarchical pick identifier ∗/
Pintelem_pos;/∗ element sequence number ∗/
} Ppick_path_elem;
prompt_echo
The prompt/echo type desired. See the Available Devices Section of INITIALIZE PICK for a description of the available types.
echo_vol
A pointer to a Plimit3 structure defining the x, y, and z components of the echo volume, in Device Coordinates. Plimit3 is defined in phigs.h as follows:
typedef struct {
Pfloatx_min;/∗ minimum x coordinate value ∗/
Pfloatx_max;/∗ maximum x coordinate value ∗/
Pfloaty_min;/∗ minimum y coordinate value ∗/
Pfloaty_max;/∗ maximum y coordinate value ∗/
Pfloatz_min;/∗ minimum z coordinate value ∗/
Pfloatz_max;/∗ maximum z coordinate value ∗/
} Plimit3;
pick_data
Pointer to a pointer that points to the pick device state within the store. Pick_data3 is defined in phigs.h as follows:
typedef struct {
union {
struct {
Pintunused;
} pet_r1;
} pets;
} Ppick_data3;
path_order
A pointer to the path order. Ppath_order is an enumerated type with the following values:
typedef enum {
PORDER_TOP_FIRST,
PORDER_BOTTOM_FIRST
} Ppath_order;
Execution
INQUIRE PICK DEVICE STATE 3 returns the current state of the specified pick device, which is stored in the workstation state list of the workstation associated with the device. The current state includes the operating mode, echo switch, initial pick, prompt/echo type, echo volume, pick path order, data record, and pick filter. See SET PICK MODE for a description of the operating mode and the echo switch, and how to set these values. See INITIALIZE PICK 3 for a description of the initial pick, prompt/echo type, echo volume, pick path order, and data record contents, and how to set these values. See SET PICK FILTER for a description of the pick filter and how to set it.
In the event of an error, the error indicator indicates the error number of the error detected, and no other output data is returned. If no error is detected, the error indicator is set to zero, and the inquired information will be available in the output parameters. Since this is an inquiry function, ERROR HANDLING is not invoked when an error is detected by this function.
ERRORS
003Ignoring function, function requires state (PHOP, WSOP, ∗, ∗)
054Ignoring function, the specified workstation is not open
060Ignoring function, specified workstation is not of category OUTIN
250Ignoring function, the specified device is not available on the specified workstation
SEE ALSO
INITIALIZE PICK 3 (3P)
SET PICK MODE (3P)
SET PICK FILTER (3P)
INQUIRE PICK DEVICE STATE (3P)
CREATE STORE (3P)
DELETE STORE (3P)
September 02, 1992