ESCAPE -1(3P) — SUNPHIGS LIBRARY
NAME
ESCAPE -1 − enforce synchronized error reporting
SYNOPSIS
C Syntax
void
pescape ( func_id, in, out )
Pintfunc_id;escape function identifier
Pescapein∗in;input data for the function
Pescapeout∗out;OUT output data of the function
FORTRAN Syntax
SUBROUTINE pesc ( FCTID, LIDR, IDR, MLODR, LODR, ODR )
INTEGERFCTIDfunction identification
INTEGERLIDRdimension of input data record array
CHARACTER∗80IDR(LIDR) input data record
INTEGERMLODRmaximum length of output data record
INTEGERLODROUT number of array elements used in ODR
CHARACTER∗80ODR(MLODR) OUT output data record
Required PHIGS Operating States
(PHOP, ∗, ∗, ∗)
DESCRIPTION
Purpose
ESCAPE -1 allows the enforcement of synchronized error reporting.
C Input Parameters
func_id
The function identifier for this escape is PUESC_ERRSYNC, which is defined in phigs.h to be -1.
inA pointer to a Pescapein union containing the input data record, uesc1_idatarec. It is defined as:
typedef struct {
Perrsyncsync_on;
} Puesc0001_idatarec; /∗ Error synchronization ∗/
sync_on
One of the following enumerated values:
0PERRSYNC_OFFAsynchronous Error Reporting
1PERRSYNC_ONSynchronous Error Reporting
C Output Parameters
There is no output data record for this escape.
FORTRAN Input Parameters
FCTID
The function identifier of this escape is PUESCERRSYNC, which is defined in phigs77.h to be -1.
LIDR
The dimension of IDR (returned by PACK DATA RECORD).
IDR(LIDR)
An ESCAPE data record packed by PACK DATA RECORD when called with the following parameters:
ILThe number of integers = 1.
IAContains one integer value, specifying the desired error synchronization mode, one of the following enumerated values:
0PERRSYNCOFFAsynchronous Error Reporting
1PERRSYNCONSynchronous Error Reporting
RLThe number of real values = 0.
SLThe number of strings = 0.
FORTRAN Output Parameters
There is no output data record for this escape.
Execution
Errors detected by SunPHIGS functions may not necessarily be reported before that function call returns to the application. This is done to enhance performance. All errors detected are reported eventually, during some call into a SunPHIGS function. And when errors are reported, the function number reported will be that of the function in which the error was detected (not necessarily the function being invoked when the error is reported). But some errors will not be reported until a subsequent call into SunPHIGS.
Some applications may need to ensure that errors are reported synchronously. This can be done using ESCAPE -1, the error synchronization escape function. If the error synchronization mode is synchronous error reporting, all errors detected inside a SunPHIGS function will be reported before that function returns to the application. If the error synchronization mode is asynchronous error reporting (the default), errors detected inside a SunPHIGS function will be reported either before that function returns or during a subsequent SunPHIGS function call.
SEE ALSO
ERROR HANDLING (3P)
Sun Release 4.0 — Last change: 29 July 1989