.\"##
.\" $XConsortium: p180,v 5.2 94/04/17 20:56:31 rws Exp $
.\"##
.\"## 
$XMCOPY
.\"## Copyright (c) 1990, 1991 by Sun Microsystems, Inc. 
.\"## 
.\"##                         All Rights Reserved
.\"## 
.\"## Permission to use, copy, modify, and distribute this software and its 
.\"## documentation for any purpose and without fee is hereby granted, 
.\"## provided that the above copyright notice appear in all copies and that
.\"## both that copyright notice and this permission notice appear in 
.\"## supporting documentation, and that the name of Sun Microsystems,
.\"## not be used in advertising or publicity 
.\"## pertaining to distribution of the software without specific, written 
.\"## prior permission.  
.\"## 
.\"## SUN MICROSYSTEMS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 
.\"## INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
.\"## EVENT SHALL SUN MICROSYSTEMS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
.\"## CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
.\"## USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
.\"## OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
.\"## PERFORMANCE OF THIS SOFTWARE.
.TH "INQUIRE POLYLINE FACILITIES" 3P "29 February 1991"
.SH NAME
INQUIRE POLYLINE FACILITIES \- inquire list of polyline facilities from
workstation description table
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
void
pinq_line_facs ( type, length, start, error_ind, facilities, total_length )
Pint	type;	\fIworkstation type\fP
Pint	length;	\fIlength of application list\fP
Pint	start;	\fIstarting position\fP
Pint	*error_ind;	\fIOUT error indicator\fP
Pline_facs	*facilities;	\fIOUT polyline facilities\fP
Pint	*total_length;	\fIOUT length of list in PHIGS\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, *, *)
.SH DESCRIPTION
.SS Purpose
\s-2INQUIRE POLYLINE FACILITIES\s+2 obtains a list of the
polyline facilities supported on the specified type of workstation.
.SS C Input Parameters
.IP \fItype\fP
Get the polyline facilities for this workstation type.
.IP \fIlength\fP
The number of \fIints\fR in the \fIfacilities\fI\(->\fItypes\fR\(->ints\fR output parameter
for which the application has allocated memory. \fIlength\fR is the number of
list elements that the system can return in \fItypes\fR\(->ints\fR.
If a value of 0 is used here, no data will be returned in the \fItypes\fR\(->\fIints\fR
list, but the total number of elements will be returned in \fItotal_length\fR.
.IP \fIstart\fP
Starting position of inquiry.  The elements in the list, beginning
with the item number specified by \fIstart\fR, are copied sequentially into 
\fItypes\(->ints\fR until \fItypes\(->ints\fR is full
or all the elements have been copied.
.SS C Output Parameters
.IP \fIerror_ind\fP
A pointer to the location to store the error number of any error
detected by this function.
.IP \fIfacilities\fP
A pointer to a structure in which the system returns the portion of the
list of polyline facilities from the
workstation description table, starting with start.
Pline_facs is defined in phigs.h as:
.nf
.ta .5i +\w'Pint_list     'u +\w'num_pred_inds;     'u
.sp .4
typedef struct {
.sp .2
	Pint_list	types;	/* list of line types */
	Pint	widths;	/* number of available line widths */
	Pint	num_widths;	/* number of available line widths */
	Pfloat	nom_width;	/* nominal line width */
	Pfloat	min_width;	/* minimum line width */
	Pfloat	max_width;	/* maximum line width */
	Pint	num_pred_inds;	/* number of predefined bundles */
.sp .2
} Pline_facs;
.fi
.IP
And Pint_list is defined in phigs.h as:
.nf
.ta .5i +\w'Pint     'u +\w'num_ints;     'u
.sp .4
typedef struct {
.sp .2
	Pint	 num_ints;	/* number of integers */
	Pint	*ints;	/* list of integers */
.fi
.sp .2
} Pint_list;
.IP
Prior to calling this function, the \fIints\fR field of the Pint_list
structure must contain a pointer to an application
supplied buffer. This buffer must be at least as large as the 
corresponding length parameter.
.IP \fItotal_length\fP
A pointer to an integer in which to return the total length of
the list.
This is the value required for \fIlength\fR if all the items in the
list are to be returned.
.SH ERRORS
.IP 002
Ignoring function, function requires state (\s-2PHOP, *, *, *\s+2)
.IP 051
Ignoring function, this information is not yet available
for this workstation type; open a workstation of this type
and use the specific workstation type
.IP 052
Ignoring function, workstation type not recognized by the implementation
.IP 059
Ignoring function, the specified workstation does not have
output capability (in other words, the workstation category is neither 
\s-2OUTPUT\s+2, \s-2OUTIN\s+2, nor \s-2MO\s+2)
.IP 062
Ignoring function, this information is not available for this
\s-2MO\s+2 workstation type
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "PHIGS WORKSTATION DESCRIPTION TABLE (7P)"
.fi
