.\"
.\" $XConsortium: p196,v 5.2 94/04/17 20:56:41 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.
.TH "INQUIRE PREDEFINED PATTERN REPRESENTATION" 3P "29 February 1991"
.SH NAME
INQUIRE PREDEFINED PATTERN REPRESENTATION \- inquire a predefined pattern representation for a workstation type
.IX "Pattern Fill" "INQUIRE PREDEFINED PATTERN REPRESENTATION"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
void
pinq_pred_pat_rep ( type, index, store, error_ind, rep )
Pint	type;	\fIworkstation type\fP
Pint	index;	\fIpredefined index\fP
Pstore	store;	\fIhandle to Store object\fP
Pint	*error_ind;	\fIOUT error indicator\fP
Ppat_rep	**rep;	\fIOUT predefined pattern rep\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, *, *)
.
.SH DESCRIPTION
.SS Purpose
Use \s-2INQUIRE PREDEFINED PATTERN REPRESENTATION\s+2 to determine the
predefined pattern
representation for a specified workstation type at a given pattern index.
.LP
.
.SS C Input Parameters
Applications using the \s-2C\s+2 binding must create a buffer to be used by this
function as memory space for storing data associated with the device state.
This buffer is passed as the \fIstore\fP argument.  
.LP
The store buffer is a data area managed by \s-2PHIGS\s+2. While the application 
is responsible for creating the inital buffer through a call to \s-2\CREATE STORE\s+2, 
\s-2PHIGS\s+2 manages this area such that there is sufficient memory for the 
specific inquiry. The data record within the store buffer is accessed 
by the pointer pointed to by \fIrep\fR.
.IP \fItype \fP
Workstation type.
.IP \fIindex \fP
Entry to be returned from the workstation table of 
predefined pattern representations.
.IP \fIstore\fP
The memory buffer \s-2PHIGS\s+2 is to use for storing the information
returned.  
This buffer must exist prior to calling this function (see
\s-2CREATE STORE (3P)\s+2).
.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 \fIrep\fP
A pointer to a pointer to a Ppat_rep structure in which the system returns the pattern representation at \fIindex\fP in the workstation table of predefined pattern representations. Ppat_rep is defined in phigs.h as:
.nf
.ta .5i +\w'Pint_size     'u +\w'*colr_array;     'u
.sp .4
typedef struct {
.sp .2
	Pint_size	dims;	/* pattern's dimensions */
	Pint	*colr_array;	/* colour index array *
.sp .2
} Ppat_rep;
.IP
.fi
The Pint_size structure used to define the pattern dimensions is defined in
phigs.h as:
.nf
.ta .5i +\w'Pint     'u +\w'size_x;     'u
.sp .4
typedef struct {
.sp .2
	Pint	size_x;	/* dimension (number of divisions) along X */
	Pint	size_y;	/* dimension (number of divisions) along Y */
.sp .2
} Pint_size;
.IP
.fi
The \fIcolr_array\fR component of Ppat_rep is a pointer to an array of the colour indices
defining the pattern of the dimensions defined by the \fIdims\fR
component.
.SS Execution
.LP
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 below 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)
.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 (i.e., 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
.IP 102
Ignoring function, the specified representation has not been predefined
on this workstation
.IP 112
Ignoring function, the pattern index value is less than one
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "INQUIRE PATTERN FACILITIES (3P)"
.SM "SET PATTERN REPRESENTATION (3P)"
.SM "INQUIRE PATTERN REPRESENTATION (3P)"
.SM "INQUIRE PREDEFINED PATTERN REPRESENTATION PLUS (3P+)"
.SM "CREATE STORE (3P)"
.SM "DELETE STORE (3P)"
.fi
