gpib_service(3) CLIX gpib_service(3)
NAME
gpib_service, gpib_service_nw - Requests notification for a GPIB SRQ
condition
LIBRARY
Intergraph Device Library (libix.a)
SYNOPSIS
#include <sys/xio/xio.h>
#include <sys/xio/xerr.h>
int gpib_service(
int channel );
int gpib_service_nw(
int channel ,
struct xiosb *xiosb ,
int efn );
PARAMETERS
channel An integer representing a GPIB channel
xiosb A pointer to an xiosb structure
efn The even number associated with the request
DESCRIPTION
General Purpose Interface Bus (GPIB) devices generally request attention
of the system controller through a Service Request (SRQ) interrupt. This
condition can be detected on channel with pib_service().
The gpib_service() function returns only after the SRQ condition is
detected. The initiating process waits indefinitely for an SRQ interrupt.
The gpib_service_nw() function is the asynchronous version of
gpib_service(), providing the same capability without waiting for
completion of the request. The efn parameter is the event flag number
associated with the request. The xiosb parameter is a pointer to the
xiosb structure updated upon completion of the request (see intro(3)).
The xfcnt member of the xiosb structure is not used.
RETURN VALUES
Upon successful completion of the synchronous request, a value of 0 is
returned. Otherwise, one of the following failure codes is returned.
2/94 - Intergraph Corporation 1
gpib_service(3) CLIX gpib_service(3)
If the asynchronous request is accepted by the XIO system, a value of 0
will be returned by the request. Otherwise, XIO_FAILURE will be returned.
Upon completion of an accepted request, the status member of the xiosb
structure will be set to either 0 if successful, or to one of the
following failure codes if unsuccessful.
ERRORS
The pib_service() and gpib_service_nw() functions will fail if one of the
following is true:
[XIO_FAILURE]
The system does not contain the driver needed to support this
request or efn is invalid.
[GPIB_OUT_OF_RANGE]
The specified channel is beyond the maximum allowed.
[GPIB_NOT_OPEN]
The specified channel is not open.
[GPIB_NOT_OWNER]
The specified channel is currently open by another process.
[GPIB_CANCELED]
The currently queued request was canceled by gpib_cancel().
RELATED INFORMATION
Functions: gpib_open(3), gpib_cancel(3), gpib_ppreq(3), gpib_spreq(3),
intro(3)
Files: xgpib(7)
2 Intergraph Corporation - 2/94