INQUIRE STRING DEVICE STATE(3P) — Kubota Pacfic Computer Inc. (29 February 1991)
NAME
INQUIRE STRING DEVICE STATE − inquire state of a STRING device
SYNOPSIS
C Syntax
void
pinq_string_st( ws, dev, store, err, op_mode, echo_switch, init_string, prompt_echo, echo_area,
string_data)
Pintws;workstation identifier
Pintdev;string device number
Pstorestore;handle to Store object
Pint∗err;OUT error indicator
Pop_mode∗op_modeOUT operating mode
Pecho_switch∗echo_switch;OUT echo switch
char∗∗init_string;OUT initial string
Pint ∗prompt_echo;OUT prompt/echo type
Plimit∗echo_area;OUT echo area
Pstring_data∗∗string_data;OUT data record
Required PHIGS Operating States
(PHOP, WSOP, ∗, ∗)
DESCRIPTION
Purpose
Use INQUIRE STRING DEVICE STATE to retrieve the current state of the specified STRING 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 string data record within the store buffer is accessed by the pointer pointed to by string_data.
wsWorkstation identifier. An integer specifying the workstation with which the specified STRING device is associated.
devThe device number of the string device. See the Available Devices section of INITIALIZE STRING for a description of the available devices.
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
errA pointer to the location to store the error number of any error detected by this function.
op_mode
The operating mode. Pop_mode is an enumerated type defined in phigs.h with the following values:
typedef enum {
POP_REQ,
POP_SAMPLE,
POP_EVENT
} Pop_mode;
echo_switch
The echo state. Pecho_switch is an enumerated type defined in phigs.h with the following values:
typedef enum {
PSWITCH_NO_ECHO,
PSWITCH_ECHO
} Pecho_switch;
init_string
A pointer to a char pointer. PHIGS sets the location pointed to by init_string to point to the initial string stored in store.
prompt_echo
The prompt/echo type desired. See the Available Devices Section of INITIALIZE STRING for a description of the available types.
echo_area
A pointer to a variable of type Plimit that contains the echo area of the device. Plimit is defined in phigs.h as follows:
typedef struct {
Pfloatx_min;/∗ x min ∗/
Pfloatx_max;/∗ x max ∗/
Pfloaty_min;/∗ y min ∗/
Pfloaty_max;/∗ y max ∗/
} Plimit;
string_data
Pointer to a pointer that points to the string state within store. Pstring_data is defined in phigs.h as follows:
typedef struct {
Pintbuffer_size;/∗ input buffer size ∗/
Pintinit_pos;/∗ initial editing position ∗/
union {
struct {
Pintunused;
} pet_r1;
} pets;
} Pstring_data;
Execution
INQUIRE STRING DEVICE STATE returns the current state of the specified string 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 string, prompt/echo type, echo area, buffer length, edit position, and data record. See SET STRING MODE for a description of the operating mode and the echo switch, and how to set these values. See INITIALIZE STRING for a description of the initial string, prompt/echo type, echo area, and data record contents, and how to set these values.
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
061Ignoring function, specified workstation is neither of category INPUT nor of category OUTIN
250Ignoring function, the specified device is not available on the specified workstation
2200C : Buffer overflow in input or inquiry function
SEE ALSO
SET STRING MODE (3P)
INITIALIZE STRING (3P)
INQUIRE STRING DEVICE STATE 3 (3P)
CREATE STORE (3P)
DELETE STORE (3P)
September 02, 1992