.\"
.\" $XConsortium: p121,v 5.2 94/04/17 20:55:49 rws Exp $
.\"
.\" 
$XMCOPY
.\" Copyright (c) 1990, 1991 by Sun Microsystems, Inc. and the X Consortium.
.\" 
.\"                         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 names of Sun Microsystems,
.\" and the X Consortium 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.
.\" 1. Substitute PHIGS Extension function name (in CAPS) for "PNAME" in line be.\"low:
.ds pN INQUIRE DIRECT COLOUR MODEL FACILITIES
.\" 4. Substitute today's date for "00 month 1900" on line below:
.TH "\*(pN" 3P+ "29 February 1991"
.SH NAME
\*(pN \- 
inquire list of workstation direct colour facilities
.IX "PHIGS Extension Functions" "\*(pN"
.IX "Inquiry functions" "INQUIRE DIRECT COLOUR MODEL FACILITIES"
.IX "Colour" "INQUIRE DIRECT COLOUR MODEL FACILITIES"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
void
pinq_direct_colr_model_facs (type, length, start, error_ind, models, 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
Pint_list	*models;	\fIOUT list of colour models\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 DIRECT COLOUR MODEL FACILITIES\s+2 
inquires for a list of workstation direct colour facilities.
.SS C Input Parameters
All of the following data types are predefined in phigs.h.
.IP \fItype\fP
The workstation type.
.IP \fIlength\fP
The number of \fIints\fR in the \fImodels\fR output parameter for which the 
application has allocated memory. \fIlength\fR is the number of list elements
that the system can return in \fImodels\(->ints\fR.
If a value of 0 is used here, no data will be returned in the \fImodels\(->ints\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 
\fImodels\(->ints\fR until \fImodels\(->ints\fR is full or all the elements
have been copied.
.SS C Output Parameters
.IP \fIerror_ind\fP
A pointer to the location for storing the error number
of any error detected by this function.
.IP \fImodels\fP
A pointer to a Pint_list
that returns the portion of the
list of available colour models from the
workstation description table, starting with \fIstart\fP.
Pint_list is defined in phigs.h as:
.nf
.ta .5i +\w'Pint     'u +\w'*integers;     'u
.sp .4
typedef struct {
.sp .2
	Pint	 num_ints;	/* number of integers */
	Pint	*ints;	/* list of integers */
.fi
.sp .2
} Pint_list;
.sp .2
Constants defined for colour model are:
.sp .2
.nf
.ta .5i +\w'0     'u +\w'PINDIRECT      'u
0      PINDIRECT	
1       PMODEL_RGB		\fIRed, Green, Blue\fP
2       PMODEL_CIELUV		\fICIE\fP
3       PMODEL_HSV		\fIHue, Saturation, Value\fP
4       PMODEL_HLS		\fIHue, Lightness, Saturation\fP
.fi
.sp .2
The pointer to the list of integers must be initialized to an array of
\fIlength\fP Pint elements.
.IP \fItotal_length\fP
A pointer to an integer in which the system returns the total number of elements
in the list.  This is the value required for \fIlength\fR if all elements in the
list are to be returned.
.SS Execution
.LP
If the inquired information is available;  then the error indicator is returned
as zero, and values are returned in the output parameters.
.LP
If the inquired information is not available;  then the values returned in the
output parameters are undefined, and the error indicator is
set to one of the following error numbers to indicate the reason for
nonavailability.
.LP
Since this is an inquiry function, \s-2ERROR HANDLING\s+2 is not invoked
when an error is detected by this function.
.SH ERRORS
.IP 002
Ignoring function, function requires state 
(\s-2PHOP\s+2, \s-2*\s+2, \s-2*\s+2, \s-2*\s+2)
.IP 051
Ignoring function, this information unavailable for this workstation type
.IP 052
Ignoring function, workstation type not recognized by the implementation
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "INQUIRE COLOUR MODEL FACILITIES (3P)"
.SM "PHIGS WORKSTATION DESCRIPTION TABLE (7P)"
.fi
