.\"
.\" $XConsortium: p159,v 5.2 94/04/17 20:56:18 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+ function name (in CAPS) for "PNAME" in line below:
.ds pN INQUIRE LIST OF LIGHT SOURCE INDICES
.TH "\*(pN" 3P+ "29 February 1991"
.SH NAME
\*(pN \-
inquire the list of light source indices defined on a workstation
.IX "Lighting" "INQUIRE LIST OF LIGHT SOURCE INDICES"
.IX "Inquiry functions" "INQUIRE LIST OF LIGHT SOURCE INDICES"
.IX "PHIGS Extension Functions" "\*(pN"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
.\" 6. Insert C syntax below
void
pinq_list_light_src_inds ( ws, length, start, error_ind, indices, total_length )
Pint	ws;	\fIworkstation identifier\fP
Pint	length;	\fIlength of application list\fP
Pint	start;	\fIstarting position\fP
Pint	*error_ind;	\fIOUT error indicator\fP
Pint_list	*indices;	\fIOUT list of light source indices\fP
Pint	*total_length;	\fIOUT length of list in PHIGS\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, WSOP, *, *)
.SH DESCRIPTION
.SS Purpose
\s-2INQUIRE LIST OF LIGHT SOURCE INDICES\s+2
inquires a list of light source indices defined on a workstation.
.SS C Input Parameters
.IP \fIws\fR
The workstation identifier.
.IP \fIlength\fR
The number of \fIints\fR in the \fIindices\fR output parameter for which the 
application has allocated memory. \fIlength\fR is the number of list elements
that the system can return in \fIindices\(->ints\fR.
If a value of 0 is used here, no data will be returned in the \fIindices\(->ints\fR
list, but the total number of elements will be returned in \fItotal_length\fR.
.IP \fIstart\fR
Starting position of inquiry.  The elements in the list, beginning
with the item number specified by \fIstart\fR, are copied sequentially into 
\fIindices\(->ints\fR until \fIindices\(->ints\fR is full
or all the elements have been copied.
.SS C Output Parameters
.IP \fIerror_ind\fR
A pointer to the location to store the error number of any error
detected by this function.
.IP \fIindices\fR
This is a pointer to a Pint_list structure.  This structure 
specifies both an integer value indicating the number of light source
representations and a pointer to a list specifying
the index numbers of the light source representations.
Pint_list is defined in phigs.h as follows:
.nf
.ta .5i +\w'Pint     'u +\w'num_ints;     'u
.sp .4
typedef struct {
.sp .2
	Pint	num_ints;	/* number of light sources */
	Pint	*ints;	/* list of light source indices */
.sp .2
} Pint_list;
.fi
.IP
The \fInum_ints\fR component specifies the number of elements in the list.
The \fIints\fR component is a pointer to a list \fInum_ints\fR long.
.IP
The application must allocate memory for \fIlength\fR elements in the
list of \fIints\fR.
.IP \fItotal_length\fR
A pointer to an integer in which the system returns the total number of elements
in the list of light source indices.  This is the value required for \fIlength\fR
if all elements in the list are to be returned.
.SS Execution
If the inquired information is available, the error indicator is
returned as zero, and values are returned in the output parameters.
.LP
If the inquired information is  not available, 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 003
Ignoring function, function requires state (\s-2PHOP,WSOP,*,*\s+2)
.IP 054
Ignoring function, the specified workstation is not open
.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)
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "INQUIRE LIGHT SOURCE REPRESENTATION (3P+)"
.SM "SET LIGHT SOURCE REPRESENTATION (3P+)"
.fi
