.\"##
.\" $XConsortium: p212,v 5.2 94/04/17 20:56:53 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 STRUCTURE IDENTIFIERS" 3P "29 February 1991"
.SH NAME
INQUIRE STRUCTURE IDENTIFIERS\- inquire the current structure identifiers
.IX "Structures" "INQUIRE STRUCTURE IDENTIFIERS"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
void
pinq_struct_ids ( length, start, error_ind, struct_ids, length_list )
Pint	length;	\fIlength of application list\fP
Pint	start;	\fIstarting position\fP
Pint	*error_ind;	\fIOUT error indicator\fP
Pint_list	*struct_ids;	\fIOUT list of structure ids\fP
Pint	*length_list;	\fIOUT length of list in PHIGS\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, *, *)
.
.SH DESCRIPTION
.SS Purpose
Use \s-2INQUIRE STRUCTURE IDENTIFIERS\s+2 to obtain a list of the current structure identifiers from the \s-2PHIGS\s+2 state list.
.
.SS C Input Parameters
.IP \fIlength\fP
The number of \fIints\fP items in the \fIstruct_ids\fP output parameter for
which the application has allocated memory.
\fIlength\fP is the number of list elements (structure identifiers)
that the system can return in \fIstruct_ids\(->ints\fP.
If a value of 0 is used here, no data will be returned in the
\fIstruct_ids\(->ints\fP list, but the total number of structure identifiers 
in the \s-2PHIGS\s+2 state list will be returned in \fIlength_list\fP.
.IP \fIstart\fP
Starting position of inquiry into the \s-2PHIGS\s+2
state list of current structure identifiers.
The elements of the list of structure identifiers, beginning
with the item number specified by \fIstart\fP, are copied sequentially
into \fIstruct_ids\(->ints\fP until \fIstruct_ids\(->ints\fP
is full or all the structure identifiers 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 \fIstruct_ids\fP
A pointer to a Pint_list structure in which the system returns the list of
current structure identifiers.
Pint_list is defined in phigs.h as follows:
.sp .4
.ta .5i +\w'Pint     'u +\w'*num_ints;     'u
.nf
typedef struct {
.sp .2
	Pint	num_ints;	/* number of Pints in list */
	Pint	*ints;	/* list of integers */
.sp .2
} Pint_list;
.fi
.IP
The \fInum_ints\fP component specifies the number of structure identifiers
in the list. The \fIints\fP component is a pointer to a list,
\fInum_ints\fP long, of the structure identifiers.
.IP
The application must allocate memory for \fIlength\fP elements in
the \fIstruct_ids\(->ints\fP list prior to calling this procedure.
.IP \fIlength_list\fP
A pointer to an integer in which the system returns the total number of
elements in the \s-2PHIGS\s+2 state list of currently used structure 
identifiers.
This is the value required for
\fIlength\fP if all structure identifiers are to be returned.
.
.SH ERRORS
.IP 002
Ignoring function, function requires state (\s-2PHOP, *, *, *\s+2)
.
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "CHANGE STRUCTURE IDENTIFIER (3P)"
.SM "INQUIRE STRUCTURE STATUS (3P)"
.fi
