.\"##
.\" $XConsortium: p144,v 5.2 94/04/17 20:56:06 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 INTERIOR FACILITIES" 3P "29 February 1991"
.SH NAME
INQUIRE INTERIOR FACILITIES \- inquire list of workstation interior facilities
from the workstation description table
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
void
pinq_int_facs ( type, h_len, h_st, error_ind, facil, tot_h_len )
Pint	type;	\fIworkstation type\fP
Pint	h_len;	\fIlength of hatch style list\fP
Pint	h_st;	\fIstarting position\fP
Pint	*error_ind;	\fI\s-2OUT\s+2 error indicator\fP
Pint_facs	*facil;	\fI\s-2OUT\s+2 interior facilities\fP
Pint	*tot_h_len;	\fI\s-2OUT\s+2 len of hatch list in \s-2PHIGS\s+2\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, *, *)
.SH DESCRIPTION
.SS Purpose
\s-2INQUIRE INTERIOR FACILITIES\s+2 obtains a list of the available
interior styles and hatch styles for the specified type of workstation.
.SS C Input Parameters
.IP \fItype\fP
Get the interior facilities for this \fIworkstation type\fP.
.IP \fIh_len\fP
The number of elements for which memory is allocated in the output
parameter \fIfacil\fR\(->\fIhatches.ints\fP.
0 may be specified in order to get the \fItot_h_len\fP.
.IP \fIh_st\fP
Starting position in the list of hatch styles at which to begin the inquiry.
.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 \fIfacil\fP
A pointer to an allocated data structure in which the system returns a
portion of the 
list of available hatch styles, starting with \fIh_st\fP.
The structure is defined as follows:
.nf
.ta .5i +1.0i +1.5i
.sp .3
typedef struct {
.sp .2
	Pint	num_int_styles;	/* number of interior styles */
	Pint_style	*int_styles[5];	/* list of available interior styles */
	Pint_list	hatch_styles;	/* list of available hatch styles */
	Pint	num_pred_inds;	/* number of predefined interior bundles */
.sp .2
} Pint_facs;
.fi
.IP
Pint_style is an enumerated type for the following
\fIinterior styles\fP; one of:
.sp .3
.ta .5i +\w'PSTYLE_PAT     'u
.nf
	\s-2PSTYLE_HOLLOW\s+2	\fIHollow\fP
	\s-2PSTYLE_SOLID\s+2	\fISolid\fP
	\s-2PSTYLE_PAT\s+2	\fIPatterned\fP
	\s-2PSTYLE_HATCH\s+2	\fIHatched\fP
	\s-2PSTYLE_EMPTY\s+2	\fIEmpty\fP
.fi
.IP
\fIPint_list\fP is defined in \fIphigs.h\fP as follows:
.nf
.ta .5i +\w'Pint	'u +\w'num_ints;	'u
.sp .3
typedef struct {
.sp .2
	Pint	 num_ints;	/* number of Pints in list */
	Pint	*ints;	/* list of integers */
.sp .2
} Pint_list;
.fi
.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 \fIh_len\fR parameter.
.IP \fItot_h_len\fP
A pointer to an integer in which the system returns the total number of
items in the workstation list of hatch styles.
This is the value required by \fIh_len\fP 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 generic
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
(that is, 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)"
.SM ".INQUIRE PREDEFINED INTERIOR REPRESENTATION (3P+)"
.fi
