.\"##
.\" $XConsortium: p261,v 5.2 94/04/17 20:57:28 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 "RETRIEVE ALL STRUCTURES" 3P "29 February 1991"
.SH NAME
RETRIEVE ALL STRUCTURES \- retrieve all structures from an archive file
.IX "Archive Files" "RETRIEVE ALL STRUCTURES"
.IX "Structures" "RETRIEVE ALL STRUCTURES"
.SH SYNOPSIS
.SS C Syntax
.ft B
.ta 1.25i 3i
.nf
void
pret_all_structs ( archive_id )
Pint	archive_id;	\fIarchive identifier\fP
.fi
.ft R
.SS Required PHIGS Operating States
(PHOP, *, *, AROP)
.SH DESCRIPTION
.SS Purpose
Use \s-2RETRIEVE ALL STRUCTURES\s+2 to retrieve all structures
from the specified open archive file into the
Central Structure Store (\s-2CSS\s+2).
.SS C Input Parameter
.IP \fIarchive_id\fP
The archive identifier specifying the open archive file
from which to read.
.SS Execution
All structures in the specified open archive file are copied
into the \s-2CSS\s+2.
If any of the structures to be retrieved currently
exist in the \s-2CSS\s+2, the conflict is resolved as follows:
.sp .5v
.in +0.5i
.ta +0.2i
.ti -0.2i
\(bu	If the retrieval conflict resolution flag is \s-2MAINTAIN\s+2,
then the conflicting structure will not be copied into the \s-2CSS\s+2 
(its contents are maintained).
.sp .5v
.ti -0.2i
\(bu	If the retrieval conflict resolution flag is \s-2UPDATE\s+2,
then the conflicting structure in the \s-2CSS\s+2 will be overwritten
(its contents are updated).
.sp .5v
.ti -0.2i
\(bu	If the retrieval conflict resolution flag is \s-2ABANDON\s+2,
then no structures will be copied to the \s-2CSS\s+2.
.LP
The retrieval conflict resolution flag is set by the
\s-2SET CONFLICT RESOLUTION\s+2
subroutine.
.LP
If the currently open structure must be overwritten
because of a conflict while
the retrieval conflict resolution flag is \s-2UPDATE\s+2,
then it is closed, its contents are
overwritten, and it is re-opened. The element pointer
will be set to point
to the last element.
.SH ERRORS
.IP 007
Ignoring function, function requires state 
(\s-2PHOP\s+2, \s-2*\s+2, \s-2*\s+2, \s-2AROP\s+2)
.IP 404
Ignoring function, the specified archive file is not open
.IP 405
Ignoring function, name conflict occurred while conflict resolution flag
has value \s-2ABANDON\s+2
.SH SEE ALSO
.nf
.IP
.ta 0.5i
.SM "OPEN ARCHIVE FILE (3P)"
.SM "ARCHIVE ALL STRUCTURES (3P)"
.SM "SET CONFLICT RESOLUTION (3P)"
.SM "INQUIRE ALL CONFLICTING STRUCTURES (3P)"
.SM "RETRIEVE STRUCTURE IDENTIFIERS (3P)"
.SM "RETRIEVE STRUCTURE NETWORKS (3P)"
.SM "RETRIEVE STRUCTURES (3P)"
.SM "DELETE ALL STRUCTURES FROM ARCHIVE (3P)"
.fi
